Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Optimized numerical evaluation

Aperta
#1,338 20 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Da chiarire
Stato di attività
Attiva
Stack tecnologico
csharp
Ambito
performance

Direzione di ricerca

Start by reviewing the existing numerical evaluation benchmarks mentioned in the issue and the current use of PeterO.Numbers. Compare speed, memory, accuracy, and precision across the proposed evaluation approaches, then identify concrete improvements and validate them with the benchmark suite; the issue is done only when all visible improvements are complete.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

The default precision today enables precise computation without necessarily merging terms just because they differ in floating point computation.

However, for some applications we may opt for less precision, because if we can use hardware floating point types for example, then the speedups will be great.

The same applies for some workloads on some computers that may benefit from specialized instructions or GPU delegation.

This is separate from function compilation because we are optimizing on node manipulation here.

So here are the following items to be determined:

  • Are the numerical evaluation types (PeterO.Numbers) the best available for C#? Have there been new work, or work that we can port over, on arbitrary precision evaluation?
  • How much can we optimize for each numerical precision (e.g. say 10 digits - would double evaluation suffice then cast back? may internals use double precision evaluation for speed at 10 digits precision?)
  • What is the Pareto frontier of (speed, memory) vs accuracy vs precision, on each workload (presumably this is the benchmarks that we currently track?)
  • How would available computing resources, say multiple cores, or GPU availability, change this? Can we take advantage of it?
  • What applications should choose what precisions? Does this relate to other settings we provide?
  • How should precision be tuned? Is it a good idea for it to be auto tuned by default?

Use this issue to track improvements; only close when all visible improvements are done.

Lingua principale
C#
Stelle
831
Fork
79
Merge medio
2h 22m
PR unite (30g)
507

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ASC-Community/AngouriMath

Tutte le issue di ASC-Community/AngouriMath

Issue simili

Altre issue su C#

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.