Deutsch English Français Italiano |
<6sERMUni4sfwXdzWb8aTSFjGgPs@jntp> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!news.mixmin.net!proxad.net!feeder1-2.proxad.net!usenet-fr.net!pasdenom.info!from-devjntp Message-ID: <6sERMUni4sfwXdzWb8aTSFjGgPs@jntp> JNTP-Route: news2.nemoweb.net JNTP-DataType: Article Subject: Re: Threads vs Process References: <v71gat$aj8p$1@dont-email.me> <v9fc6t$2mdfg$1@paganini.bofh.team> <wZ3kBCL52vnUkkvFGisuqwdZ7Mk@jntp> <v9fojn$2n22o$1@paganini.bofh.team> <v9fqr5$12bq$1@news.usenet.ovh> <v9fv26$2nd94$1@paganini.bofh.team> <QHmHcgZ1wpB0WQGUWir7UJkc0BU@jntp> <v9inhr$30tgg$1@paganini.bofh.team> <LPj-LG68xkkv2S1Cv5zPLRuBONE@jntp> <3kFmA5w1Ga-hCPXht5gTT6S-Amw@jntp> Newsgroups: fr.comp.sys.atari JNTP-HashClient: 3Uv5P-W_HnS_Oi4U9a-ZCZsoP_I JNTP-ThreadID: v71gat$aj8p$1@dont-email.me JNTP-ReferenceUserID: 44@news2.nemoweb.net JNTP-Uri: http://news2.nemoweb.net/?DataID=6sERMUni4sfwXdzWb8aTSFjGgPs@jntp User-Agent: Nemo/0.999a JNTP-OriginServer: news2.nemoweb.net Date: Thu, 15 Aug 24 11:18:56 +0000 Organization: Nemoweb JNTP-Browser: Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Mobile Safari/537.36 Injection-Info: news2.nemoweb.net; posting-host="f99c1a66ac44c50505160b7ca4a07bd2440f4715"; logging-data="2024-08-15T11:18:56Z/8987591"; posting-account="69@news2.nemoweb.net"; mail-complaints-to="julien.arlandis@gmail.com" JNTP-ProtocolVersion: 0.21.1 JNTP-Server: PhpNemoServer/0.94.5 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-JNTP-JsonNewsGateway: 0.96 From: OL <ol.google@lutece.net> Bytes: 3704 Lines: 46 Le 15/08/2024 à 10:40, pehache a écrit : > Le 15/08/2024 à 00:31, OL a écrit : >> Le 14/08/2024 à 18:55, Francois LE COAT a écrit : >>> Salut, >>> >>> OL écrit : >>>> Et moi je te répond que dans le monde moderne sur une machine de bureau >>>> actuel le parallèlisme pour faire du calcul (on parlait bien de cela il >>>> me semble) se fait par thread pas par process, faudrait te mettre à jours. >>> >>> Bien pour faire du traitement d'images, et de la vision artificielle, >>> qui sont des calculs assez complexes, principalement sur des entiers, >>> j'utilise les ressources parallèles des machines multi-coeurs, en >>> lançant des processus concurrents. Il suffit souvent de découper les >>> images, et de lancer des calculs identiques, sur des morceaux d'images, >>> et de regrouper les calculs sur les différents morceaux indépendants. >> >> Effectivement tu peux faire comme cela, est-ce pour autant le plus efficace ? >> Non et de très loin. > > Tout dépend le type de calcul, cette méthode rustique peut dans certains cas > convenir. Mais c'est bien ce qu'elle est : rustique. Oui rustique > >> Dans ce cas le thread est plus recommandé mais c'est plus compliqué à >> programmer. > > Comme je l'ai écrit par précédemment, quand on fait de la programmation > scientifique (ce qui comprend le traitement d'images) on n'essaie pas de gérer > soi-même les threads, on utilise OpenMP qui le fait pour nous à partir de > quelques directives très simples: > > #pragma omp parallel for > for (int i=0; i<n; i++) { > //un calcul quelconque > } > > et la boucle est automatiquement découpée et distribuée sur autant de threads > qu'il y a de coeurs (physiques) sur la machine. Je pensais à un truc tout bête en fait, pour faire la même chose que proposé par François, il faut du point de vu code je suppose que le code doit être "safe thread" alors qu'il n'y en a pas besoin dans son cas, mais peut-être que les compilateurs savent gérer la chose avec openmp ou faut encore faire attention ?