C'est véritablement compliqué de faire un bench et l'auteur de celui-ci a fait un travail (tester plusieurs compilateurs, donner une description de la machine sur le quel il a fait son test, donner les sources du test,...) mais ce n'est pas plus que de l'amusement perso (ce qui est très bien !).
Le code C++ et Nim sont équivalent, l'algo a été porté 1-1.
L'idée est d'avoir un bench complètement compute-bound (et non pas memory-bound comme la multiplication de matrice) pour vérifier si j'ai bien un speed-up de 18x sur ma machine avec 18 coeurs.
En réalité j'ai entre 20x et 21.8x ce qui doit s'expliquer par l'hyperthreading.
[^] # Re: Aie mes yeux...
Posté par mratsim . En réponse au lien Nim plus rapide que C++ sur du ray tracing. Évalué à 1.
Le code C++ et Nim sont équivalent, l'algo a été porté 1-1.
Le but initial du benchmark est de comparer la parallélisation OpenMP contre ma propre librairie Weave https://github.com/mratsim/weave/tree/master/demos/raytracing#results--analysis
L'idée est d'avoir un bench complètement compute-bound (et non pas memory-bound comme la multiplication de matrice) pour vérifier si j'ai bien un speed-up de 18x sur ma machine avec 18 coeurs.
En réalité j'ai entre 20x et 21.8x ce qui doit s'expliquer par l'hyperthreading.