Choix d’un processeur pour FreeCad

Forum destiné aux questions et discussions en français
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Post Reply
benoitlst
Posts: 106
Joined: Wed Jan 16, 2019 8:35 pm

Choix d’un processeur pour FreeCad

Post by benoitlst »

Bonjour à toutes et tous,

Je projette de m’acheter un nouveau PC, FreeCad fait partie de la liste des usages que j’en ferai(faire le bon choix au niveau matériel).

Le choix se porte sur un processeur(CPU) équipé d’un processeur graphique(GPU).

Le choix n’est pas énorme, soit le GPU intégré aux processeurs AMD soit celui intégré aux processeurs Intel.
Le GPU des processeurs AMD est beaucoup plus rapide que celui des CPU Intel.

Par contre, si je compare la puissance des processeurs, Intel l’emporte en Single Thread (performance sur un seul cœur logique) j’ai appris ici que FreeCad n’est pas « multithreadé », donc ça ne l’aide pas d’avoir 8 cœurs et 16 threads, il n’en utilise qu’un à la fois.

Que faut-il privilégier pour FreeCad (hors atelier rendu), la puissance du GPU ou celle du CPU ?

Merci d’avance,
--
Benoit
jp-willm
Veteran
Posts: 1120
Joined: Sat Feb 06, 2016 4:11 pm
Location: France (Alsace)
Contact:

Re: Choix d’un processeur pour FreeCad

Post by jp-willm »

benoitlst wrote: Mon Jan 10, 2022 5:54 pm Que faut-il privilégier pour FreeCad (hors atelier rendu), la puissance du GPU ou celle du CPU ?
Ton choix CPU est bien analysé et un GPU intégré fait l'affaire pour les travaux courants.

Il faut au moins 8 Go de RAM pour être tranquille.

Je prépare souvent mes tutos sur un portable :
CPU: Intel Pentium N4200 (4) @ 2.500G
GPU: Intel Celeron N3350/Pentium N420
Memory: 911MiB / 3752MiB

Merci d’avance,
Mes deux centimes, :)
User avatar
-alex-
Veteran
Posts: 1861
Joined: Wed Feb 13, 2019 9:42 pm
Location: France

Re: Choix d’un processeur pour FreeCad

Post by -alex- »

Il y avait un sujet de cadran de montre de @shupin il y a quelques temps, on avait fait des comparaisons de machines.
Je cherche le sujet.....
Ayé, retrouvé : https://forum.freecadweb.org/viewtopic. ... 82#p381862
La machine de @shupin semblait bien performante 8-)
benoitlst
Posts: 106
Joined: Wed Jan 16, 2019 8:35 pm

Re: Choix d’un processeur pour FreeCad

Post by benoitlst »

-alex- wrote: Mon Jan 10, 2022 11:48 pm Il y avait un sujet de cadran de montre de @shupin il y a quelques temps, on avait fait des comparaisons de machines.
Je cherche le sujet.....
Ayé, retrouvé : https://forum.freecadweb.org/viewtopic. ... 82#p381862
La machine de @shupin semblait bien performante 8-)
Merci ! ;-)

Bonsoir,

Mais comment c’est possible ça ?
Dans ce fil de discussions, tu vas plus vite que moi avec ton Raspberry PI4 1,5GHz-4Gb - Raspbian 32B: 6,7sec
Et sur mon portable bas de gamme (mais quand même plus rapide qu’un Raspberry PI4) 9.64 sec c’est pas possible on mesure pas la même chose…

Code: Select all

>>> def recalc():
... 	t=time.process_time()
... 	App.ActiveDocument.recompute()
... 	return time.process_time() - t
Puis j’en ai fait plusieurs pour voir :

Code: Select all

add=0.0
>>> for i in range(15):
... 	App.ActiveDocument.Cut.touch();
... 	add+= recalc()

print(add/15)
9.643618068933336
J'ai essayé de regarder ce qui se passe avec radeontop durant ces 15 répétions de calcul, aucun signe d'activité du GPU(sauf si je déplace une fenêtre, mais je ne l'ai pas fait pour ne pas fausser l'expérience).

radeontop montre clairement une activité quand je déplace un objet dans la vue 3D, mais si c'est légèrement saccadé une fraction de seconde quand on change l'orientation d'un objet complexe dans la vue 3D, ça n'empêche pas de travailler dans de bonnes contions.

Mais alors c'est dans quel type d'usage de FreeCad que le GPU est sollicité (excepté l'atelier ray tracing )?
albertdela
Posts: 182
Joined: Thu Sep 14, 2017 9:55 pm

Re: Choix d’un processeur pour FreeCad

Post by albertdela »

Bonsoir,
Me semble-t-il que FreeCAD est un logiciel dit "CPU Limited". Si je me rappelle bien, les objets sont calculés avec des tableaux de point. Donc le GPU n'est que très peu utilisé.
Il faudrait revoir comment fonctionne le moteur de Freecad (le truc qui génère le TNP).
En gros, à part les montages de plusieurs centaines de pièces imbriquées, le GPU ne sert à rien. Après, sauf à faire des intersections de courbes de Gordon, je ne vois pas comment on pourrait utiliser le GPU ici...
@+

Edit : la question semble avoir été déjà répondu... CPU limited mais pas de source officielle... https://forum.freecadweb.org/viewtopic.php?t=47453
Last edited by albertdela on Tue Jan 11, 2022 7:20 pm, edited 1 time in total.
User avatar
-alex-
Veteran
Posts: 1861
Joined: Wed Feb 13, 2019 9:42 pm
Location: France

Re: Choix d’un processeur pour FreeCad

Post by -alex- »

benoitlst wrote: Tue Jan 11, 2022 5:41 pm Mais comment c’est possible ça ?
Dans ce fil de discussions, tu vas plus vite que moi avec ton Raspberry PI4 1,5GHz-4Gb - Raspbian 32B: 6,7sec
Et sur mon portable bas de gamme (mais quand même plus rapide qu’un Raspberry PI4) 9.64 sec c’est pas possible on mesure pas la même chose…
Je viens de refaire le test, sur RPI4 mais sous RPIOS64B beta Bullseye cette fois, et avec une version de FC plus récente:

1- donc je prends ce fichier: Vostok_Amphibia_Part-Draft-taille-inf.FCStd
2- je lance FC
3- puis je fais un Part_Cut entre Array001 - Extrude003 => ça donne Cut001 (ça prend environ 6s...)
(ne fais rien d'autre, certaines actions intermédiaires changent le chrono par la suite)
4- puis dans la console Python:

Code: Select all

import time
t = time.time() ; App.ActiveDocument.Cut001.recompute() ; App.Console.PrintMessage("{:.1f} s\n".format(time.time()-t))
5- résultat dans la vue rapport:

Code: Select all

19:39:05  6.4 s
La performance de mon petit RPI4 est toujours identique :D

Vérifie que c'est bien ce que tu as fait.
Pour info. saches tout de même que FreeCAD est multithread sur les opérations booleenes, pour le recalcule de Cut001 les 4 petits coeurs de mon joujou s'agitent gentillement. Soit 25% à 35% de charge constaté sur le tread FreeCAD pendant le recalcul. Pour un recalcul plus massif (de l'objet Sketch par exemple), la charge CPU va passer à 100% pendant un moment sur le thread FreeCAD.
Mais alors c'est dans quel type d'usage de FreeCad que le GPU est sollicité (excepté l'atelier ray tracing )?
Pour autant que je sache le GPU n'est solicité que pour le rendu de la scène 3D. Si tu mets l'objet à 50% de transparence la charge GPU va augmenter.
Post Reply