Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > fr.comp.algorithmes > #577 > unrolled thread

Traduction pour "concurrency, concurrent programming"

Started byLaurent Bloch <lb@laurentbloch.org>
First post2015-08-05 19:06 +0200
Last post2015-08-09 10:04 +0200
Articles 3 — 2 participants

Back to article view | Back to fr.comp.algorithmes


Contents

  Traduction pour "concurrency, concurrent programming" Laurent Bloch <lb@laurentbloch.org> - 2015-08-05 19:06 +0200
    Re: Traduction pour "concurrency, concurrent programming" Yliur <yliur@free.fr> - 2015-08-06 04:43 +0200
      Re: Traduction pour "concurrency, concurrent programming" Laurent Bloch <lb@laurentbloch.org> - 2015-08-09 10:04 +0200

#577 — Traduction pour "concurrency, concurrent programming"

FromLaurent Bloch <lb@laurentbloch.org>
Date2015-08-05 19:06 +0200
SubjectTraduction pour "concurrency, concurrent programming"
Message-ID<20150805190632.7a2cf248@beatrix>
Bonjour,

Voici une question qui me semble adaptée aux groupes auxquels
je l'adresse : comment traduire en français "concurrency, concurrent
programming" ? Quelle distinction avec parallélisme, 
multiprogrammation, multi-tâche ?

Merci de toute suggestion !

-- 
Laurent Bloch -- lb@laurentbloch.org -- www.laurentbloch.org

[toc] | [next] | [standalone]


#578

FromYliur <yliur@free.fr>
Date2015-08-06 04:43 +0200
Message-ID<20150806044303.44f31fc6@free.fr>
In reply to#577
Le Wed, 5 Aug 2015 19:06:32 +0200
Laurent Bloch <lb@laurentbloch.org> a écrit :

> Bonjour,
> 
> Voici une question qui me semble adaptée aux groupes auxquels
> je l'adresse : comment traduire en français "concurrency, concurrent
> programming" ? Quelle distinction avec parallélisme, 
> multiprogrammation, multi-tâche ?
> 
> Merci de toute suggestion !

Étant donné que les définitions ne sont pas unifiées, ni en anglais ni
en français, pas évident de fixer des traductions ou des termes.

Quelques éléments en vrac :

    - Multi-tâches est un terme que j'ai surtout vu employé dans le
      cadre des systèmes d'exploitation, plutôt pour décrire le fait
      qu'ils savent gérer ces tâches que pour traiter la manière dont
      elles-mêmes sont programmées.

    - D'un autre côté "tâche" peut décrire assez bien des "trucs à
      réaliser" par un programme (issu d'un découpage : les tâches
      pouvant être exécutées en séquence, en parallèle, ...). Mais je
      ne me souviens pas avoir vu le terme "multi-tâches" pour un
      programme parallélisé.

    - Je me souviens d'un article qui choisissait une distinction
      intéressante entre concurrence (le fait que deux tâches aient
      besoin d'accéder aux mêmes ressources [processeur exclu ici]) et
      parallélisme (le fait d'exécuter des bouts de code en parallèle).
      Ici on imagine un programme découpé en "tâches", qui peuvent être
      concurrentes ou non (deux tâches peuvent avoir besoin d'accéder à
      une structure de données commune par exemple, ou à un fichier
      commun...). Cette notion de concurrence était indépendante du
      fait que les tâches soient exécutées ou non en parallèle. C'est
      juste un découpage conceptuel du programme. Les tâches peuvent
      être exécutées les unes à la suite des autres (par exemple une
      fonction appelle les fonctions correspondant aux tâches, ou
      simplement le code est écrit tout à la suite dans une fonction
      unique) ou en parallèle (dans plusieurs fils d'exécution
      séparés). Dans le cas d'exécution parallèle de tâches
      concurrentes, des mécanismes sont nécessaires pour éviter les
      ennuis.

    - On pourrait aussi dire que le temps du processeur est une
      ressource partagée et que s'il y a plusieurs tâches elles sont
      potentiellement concurrentes par rapport à cette ressource. Le
      parallélisme serait alors le fait d'exécuter des tâches
      réellement en parallèle : plutôt le fait d'avoir plusieurs cœurs
      et/ou processeurs et de les utiliser que le simple fait d'avoir
      plusieurs fils d'exécution. Une distinction peut-être moins
      intéressante, si on s'intéresse surtout aux problèmes
      d'interactions entre les tâches. D'autant que du coup elles sont
      toutes concurrentes.

    - Il me semble aussi avoir lu un article qui parlait de
      programmation concurrente et concourante, la première traitant de
      tâches qui ont des problèmes de concurrences d'accès à certaines
      ressources, la seconde le simple fait que l'exécution ait lieu en
      même temps (ou potentiellement en même temps, donc utiliser des
      fils d'exécution suffit pour que la programmation soit
      concourante dans cette définition me semble-t-il, peu importe
      qu'il y ait un ou plusieurs cœurs pour exécuter les tâches
      réellement en parallèle).

D'autres définitions ici (programmation concurrente "disjointe" ou
non) :
    https://fr.wikipedia.org/wiki/Programmation_concurrente

Donc pour répondre plus précisément à ta question : "concurrence" et
"programmation concurrente" semblent adaptés. Avec distinction entre la
concurrence et le parallélisme si la concurrence représente le fait que
des tâches aient des conflits potentiels d'accès à des ressources
(indépendamment du fait qu'on les exécute réellement en parallèle ou
non) et le parallélisme représente le fait d'exécuter des tâches en
parallèle ou potentiellement en parallèle (que les tâches soient
concurrentes ou non).

[toc] | [prev] | [next] | [standalone]


#579

FromLaurent Bloch <lb@laurentbloch.org>
Date2015-08-09 10:04 +0200
Message-ID<20150809100420.2ce98018@beatrix>
In reply to#578
Merci ! Je me résoudrai donc à « concurrent », bien qu'il présente
l'inconvénient de véhiculer des connotations ignorées de son
homonyme anglais.

Cordialement !

Le jeudi 06 août 2015 Yliur a écrit ceci :

> Le Wed, 5 Aug 2015 19:06:32 +0200
> Laurent Bloch <lb@laurentbloch.org> a écrit :
> 
> > Bonjour,
> > 
> > Voici une question qui me semble adaptée aux groupes auxquels
> > je l'adresse : comment traduire en français "concurrency, concurrent
> > programming" ? Quelle distinction avec parallélisme, 
> > multiprogrammation, multi-tâche ?
> > 
> > Merci de toute suggestion !
> 
> Étant donné que les définitions ne sont pas unifiées, ni en anglais ni
> en français, pas évident de fixer des traductions ou des termes.
> 
> Quelques éléments en vrac :
> 
>     - Multi-tâches est un terme que j'ai surtout vu employé dans le
>       cadre des systèmes d'exploitation, plutôt pour décrire le fait
>       qu'ils savent gérer ces tâches que pour traiter la manière dont
>       elles-mêmes sont programmées.
> 
>     - D'un autre côté "tâche" peut décrire assez bien des "trucs à
>       réaliser" par un programme (issu d'un découpage : les tâches
>       pouvant être exécutées en séquence, en parallèle, ...). Mais je
>       ne me souviens pas avoir vu le terme "multi-tâches" pour un
>       programme parallélisé.
> 
>     - Je me souviens d'un article qui choisissait une distinction
>       intéressante entre concurrence (le fait que deux tâches aient
>       besoin d'accéder aux mêmes ressources [processeur exclu ici]) et
>       parallélisme (le fait d'exécuter des bouts de code en parallèle).
>       Ici on imagine un programme découpé en "tâches", qui peuvent être
>       concurrentes ou non (deux tâches peuvent avoir besoin d'accéder à
>       une structure de données commune par exemple, ou à un fichier
>       commun...). Cette notion de concurrence était indépendante du
>       fait que les tâches soient exécutées ou non en parallèle. C'est
>       juste un découpage conceptuel du programme. Les tâches peuvent
>       être exécutées les unes à la suite des autres (par exemple une
>       fonction appelle les fonctions correspondant aux tâches, ou
>       simplement le code est écrit tout à la suite dans une fonction
>       unique) ou en parallèle (dans plusieurs fils d'exécution
>       séparés). Dans le cas d'exécution parallèle de tâches
>       concurrentes, des mécanismes sont nécessaires pour éviter les
>       ennuis.
> 
>     - On pourrait aussi dire que le temps du processeur est une
>       ressource partagée et que s'il y a plusieurs tâches elles sont
>       potentiellement concurrentes par rapport à cette ressource. Le
>       parallélisme serait alors le fait d'exécuter des tâches
>       réellement en parallèle : plutôt le fait d'avoir plusieurs cœurs
>       et/ou processeurs et de les utiliser que le simple fait d'avoir
>       plusieurs fils d'exécution. Une distinction peut-être moins
>       intéressante, si on s'intéresse surtout aux problèmes
>       d'interactions entre les tâches. D'autant que du coup elles sont
>       toutes concurrentes.
> 
>     - Il me semble aussi avoir lu un article qui parlait de
>       programmation concurrente et concourante, la première traitant de
>       tâches qui ont des problèmes de concurrences d'accès à certaines
>       ressources, la seconde le simple fait que l'exécution ait lieu en
>       même temps (ou potentiellement en même temps, donc utiliser des
>       fils d'exécution suffit pour que la programmation soit
>       concourante dans cette définition me semble-t-il, peu importe
>       qu'il y ait un ou plusieurs cœurs pour exécuter les tâches
>       réellement en parallèle).
> 
> D'autres définitions ici (programmation concurrente "disjointe" ou
> non) :
>     https://fr.wikipedia.org/wiki/Programmation_concurrente
> 
> Donc pour répondre plus précisément à ta question : "concurrence" et
> "programmation concurrente" semblent adaptés. Avec distinction entre la
> concurrence et le parallélisme si la concurrence représente le fait que
> des tâches aient des conflits potentiels d'accès à des ressources
> (indépendamment du fait qu'on les exécute réellement en parallèle ou
> non) et le parallélisme représente le fait d'exécuter des tâches en
> parallèle ou potentiellement en parallèle (que les tâches soient
> concurrentes ou non).
> 


-- 
Laurent Bloch -- Université Paris-Dauphine -- +33 6 03 12 16 97

[toc] | [prev] | [standalone]


Back to top | Article view | fr.comp.algorithmes


csiph-web