Application multiProcesseur
Répondre à la discussion
Affichage des résultats 1 à 18 sur 18

Application multiProcesseur



  1. #1
    boulbidor

    Smile Application multiProcesseur


    ------

    Salut tout le monde ! Je cherche une application multiprocesseur à implémenté !
    En fait, mes recherches m'ont orienté en grande partie sur les applications de traitements de flux image-son (en occurrence les encodeurs ex: H.264)
    J'aimerais savoir si il y a d'autres types d'applications pouvant utiliser le multi-core ou le multi-Thread ?
    Merci d'avance (^_^)

    -----

  2. #2
    bzh_nicolas

    Re : Application multiProcesseur

    Il n'y a pas vraiment de domaine réservé aux appli multithreadées.
    On pourrait très bien imaginer une appli ouvrant plusieurs documents, chacun dans un threads différends (il me semble d'ailleurs que c'est ce que font déjà automatiquement les applis mdi sous windows).
    Après on pourrait très bien imaginer transformer chaque thread en un processus. Une simple appli console peut aussi être multithreadée ou lancer plusieurs processus. Par exemple : la fonction factorielle récursive, il est facile de l'adapter pour la lancer en n processus.

  3. #3
    boulbidor

    Re : Application multiProcesseur

    Citation Envoyé par bzh_nicolas Voir le message
    Il n'y a pas vraiment de domaine réservé aux appli multithreadées.
    Après on pourrait très bien imaginer transformer chaque thread en un processus. Une simple appli console peut aussi être multithreadée ou lancer plusieurs processus. Par exemple : la fonction factorielle récursive, il est facile de l'adapter pour la lancer en n processus.
    Ok si je comprend bien, je peux imaginer n'importe quelle application, le subdivisé en plusieurs processus pour le traiter sur multipros.
    En bref il suffit juste que l'application soit scindable en multi-processus.

  4. #4
    softelectro

    Re : Application multiProcesseur

    Attention il ne faut pas confondre processus et thread.

    Un processus peut contenir plusieurs thread.

    Par exemple sous Windows quand tu lance un programme, ça correspond à un processus (c'est que tu voit dans le gestionnaire des tâches) mais ce programme peut utiliser plusieurs threads (fonction affichage, fonction gestion événement clavier, ...).

    En programmation en C/C++ dans ton programme (processus) tu peut créer plusieurs treads.

    Concernant l'utilisation de plusieurs processeurs, je ne sais pas comment on fait. mais je pense que ce sont les couches bases de l'OS qui gére cette partie (A confirmer).

  5. A voir en vidéo sur Futura
  6. #5
    boulbidor

    Re : Application multiProcesseur

    Citation Envoyé par softelectro Voir le message
    Attention il ne faut pas confondre processus et thread.

    Un processus peut contenir plusieurs thread.

    Concernant l'utilisation de plusieurs processeurs, je ne sais pas comment on fait. mais je pense que ce sont les couches bases de l'OS qui gére cette partie (A confirmer).
    Mon objectif, c'est d'implémenter une application qui tourne sur deux processeurs. En fait j'ai un asic dont l'architecture est composé de 2 cores ! J'ai pas encore d'OS dessus. Je dois programmer l'application directement sans os.

  7. #6
    softelectro

    Re : Application multiProcesseur

    je ne faudrait pas faire le mec chiant, mais il ne faut pas confondre processeur et core (cœur en fraçais).

    Un processeurs peut avoir plusieurs cœurs.

    Je pense que l'utilisation de plusieurs cœurs peut être programmé, mais je ne sais pas comment.

    Mais vu le peu d'appli multicœur, ça doit être galère.

    @+

  8. #7
    bzh_nicolas

    Re : Application multiProcesseur

    pas besoin de plusieurs core ou processeur pour une appli divisée en plusieurs processus. Cela fonctionne également sur un core unique.
    Ce n'est pas si galère que ça à programmer d'autant plus qu'il y a plusieurs API (propriétaires ou libres) qui aide bien dans cette tache en te détachant de tous les traitements de bas niveau. A voir s'il y a des portages existant pour les besoins précis de boulbidor.

  9. #8
    boulbidor

    Re : Application multiProcesseur

    Citation Envoyé par bzh_nicolas Voir le message
    A voir s'il y a des portages existant pour les besoins précis de boulbidor.
    J'utilise l'architecture leon3-MP de Gaisler recherche. Normalement ils ont l'outil BCC qui puisse permettre de faire l'application et le GRMON pour le portage sur la cible (Enfin, si je ne me trompe pas ).
    Autrement je serai certainement obligé d'embarquer un os et faire tourné mon application sur l'OS en utilisant ses propriétés. (Galère ! lol)

  10. #9
    polo974

    Re : Application multiProcesseur

    ??? factorielle en multi thread ??? sachant que f(n+1) dépend de f(n) ....

    Pour profiter au mieux du multi core, il vaut mieux avoir des choses relativement indépendantes à faire, sinon, bonjour les pertes dans les échanges (cache flushing etc..)

    THE classique, c'est le calcul des fractals de mandelbrot (surtout qu'il y a un fpu).

    Sans système, il faut tout gérer à la main, mais il doit bien y avoir un debian porté dessus depuis le temps...
    Jusqu'ici tout va bien...

  11. #10
    pazcal

    Re : Application multiProcesseur

    Il y a des tonnes d'applis pemrettant de mettre en oeuvre le parallélisme (spatial) multi CPU. Rien ne t'empeche de lancer 2 applis qui te calculent 10000 matrices de rotation (polygone, ou autre) par exemple, tu verras qu'il y a de quoi faire. Après, si tu veux t'amuser avec ça, jette un coup d'oeil sur CUDA, un langage qui te pemret d'utiliser les coeurs de ta carte graphique. Il n'est pas rare de trouver des GPU offrant 256, ou 392 (et bien plus) coeurs qui travaillent en parallèle.
    Un calcul prendra par exemple 1ms, et 256 calculs identiques prendront ... 1ms aussi au temps de transfert des données près...
    Les appli de calcul vectorielles se prentent particulièrement bien au parallélisme, c'est la raison pour laquelle les GPU sont massivement parallèles.

    A plus

  12. #11
    boulbidor

    Re : Application multiProcesseur

    Slt à tous et merci pour les réponses !
    Comme je suis débutant dans ce domaine je compte faire une application simple un peu lourde en calcul.
    Moi choit a donc été porter sur un filtre d'image.

  13. #12
    pazcal

    Re : Application multiProcesseur

    Citation Envoyé par boulbidor Voir le message
    Slt à tous et merci pour les réponses !
    Comme je suis débutant dans ce domaine je compte faire une application simple un peu lourde en calcul.
    Moi choit a donc été porter sur un filtre d'image.
    Le filtre d'image se prete parfaitement bien au parallélisme. Sur du filtrage 1D tu peux confier les lignes paires à un processeur et les lignes impaires à l'autre. Sur du filtrage 2D, tu fais pareil mais avec des blocs de pixels au lieu de lignes.
    A plus

  14. #13
    boulbidor

    Re : Application multiProcesseur

    Citation Envoyé par pazcal Voir le message
    Le filtre d'image se prete parfaitement bien au parallélisme. Sur du filtrage 1D tu peux confier les lignes paires à un processeur et les lignes impaires à l'autre.
    Merci ! je fais du filtrage 1D.
    Tu ne sais pas comment en langage c demander explicitement à un processeur d'effectuer une tâche et non une autre ?
    cordialement ...

  15. #14
    polo974

    Re : Application multiProcesseur

    Soit tu utilises un os multi processeur qui sait donc équilibrer les charges, et il te suffit de créer autant de thread de travail que de proc.

    Soit tu sais comment lancer tes différents processeurs et tu te débrouilles pour qu'ils ne fassent pas 2 fois la même chose...

    De toute façon, ça ne relève pas du langage C...
    Jusqu'ici tout va bien...

  16. #15
    boulbidor

    Re : Application multiProcesseur

    Citation Envoyé par polo974 Voir le message
    De toute façon, ça ne relève pas du langage C...
    Je vais donc faire à ma manière.
    a plus

  17. #16
    pazcal

    Re : Application multiProcesseur

    Citation Envoyé par boulbidor Voir le message
    Je vais donc faire à ma manière.
    a plus
    Si tu veux te frotter à l'architecture interne de ton (tes) CPU(s). Tu peux commander directement chez Intel les 6 databooks complets des derniers couers Intel, en plus c'est totalement gratuit. Ces livres sont dispos en pdf sur le site d'Intel. Tu trouveras notament comment choisir sur quel coeur faire tourner ta tâche.
    a plus

  18. #17
    boulbidor

    Re : Application multiProcesseur

    Citation Envoyé par pazcal Voir le message
    Tu peux commander directement chez Intel les 6 databooks complets des derniers couers Intel.
    a plus
    Mon application est destiné à un SOC (Avec architecture Sparc V8). Les spécifications d'intel ne me seront pas d'un grand secours.
    Mais bon merci pour l'information.
    Je vais embarquer ecos (il support le SMP pour la gestion des tâches et des processeurs) : recommandation du fabricant !

  19. #18
    pazcal

    Re : Application multiProcesseur

    Citation Envoyé par boulbidor Voir le message
    Mon application est destiné à un SOC (Avec architecture Sparc V8). Les spécifications d'intel ne me seront pas d'un grand secours.
    Mais bon merci pour l'information.
    Je vais embarquer ecos (il support le SMP pour la gestion des tâches et des processeurs) : recommandation du fabricant !
    Dans ce cas faire tourner une appli sur un processeur dépend de l'architecture de ton systeme.
    a plus

Discussions similaires

  1. BD et application
    Par invitec3f7c029 dans le forum Programmation et langages, Algorithmique
    Réponses: 1
    Dernier message: 10/01/2011, 13h49
  2. difference entre application R-lineaire et application C-lineaire
    Par jonh35 dans le forum Mathématiques du supérieur
    Réponses: 1
    Dernier message: 29/03/2009, 15h55
  3. Application
    Par inviteff15dbd2 dans le forum Mathématiques du supérieur
    Réponses: 9
    Dernier message: 05/11/2008, 13h54
  4. application
    Par inviteb3540c06 dans le forum Mathématiques du supérieur
    Réponses: 17
    Dernier message: 04/05/2007, 01h25
  5. Application !
    Par invite60ce709c dans le forum Mathématiques du supérieur
    Réponses: 30
    Dernier message: 21/04/2007, 19h18