IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

utilisation des threads sur C++ builder 6


Sujet :

C++

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 3
    Points : 3
    Points
    3
    Par défaut utilisation des threads sur C++ builder 6
    Salut tlm!!
    Je ve savoir est ce que si j'utilise des threads dans mon programme et que chaque thread execute un partie , je gagne en temps d'execution ou non?

    Le probleme c ke j'ai un programme de filtrage d'image et pour filtrer en utilisant certain filtre ca prend 10 mn donc si je divise l'image en plusieurs partie et ke j'execute le filtrage en parallele des differentes partie en utilisant des threads est ce ke je gagne du temps??!!

    j'attend vos remarque et si quelqu'un a une idee pour accelerer mon calcul en utilisant differentes methodes je suis a l'ecoute !!

    Merci

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    Mon avis à 1€

    Le multi thread cela a du sens pour:

    - séparer les fonctionnalités (un thread s'occupe de la réception sur le socket, un autre thread s'occupe des écritures en base de données, le 3eme thread s'occupe de la génération des rapports, c'est un exemple)

    - accélèrer/parrallèliser les traitements si plusieurs tâches se retrouvent bloquées/en attente sur une ressource système (socket, fichier, interface utilisateur, ...)

    Dans ton cas, je soupçonne une utilisation intense de la CPU (100%CPU ?)pour appliquer un filtre sur 1 image. Donc cela ne l'accèllerera pas voire même cela ira moins vite, car il faudra gérer la communication inter thread et le système devra faire de la commutation de threads.

    Donc à moins de rendre ton algo parrallèlisable, je ne suis pas sûr que le jeu en vaille la chandelle : ta CPU ne trournera jamais à 200% parce que tu as 2 thread.

    Par contre, il te reste des options sur l'optimisation en premier de ton algo et en second de ton code.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    ram_0000: De nos jours, pas mal de PCs ont au moins un processeur dual-core ou hyperthreadé.
    Et là, paralléliser le traitement sur deux threads permet à celui-ci d'utiliser la totalité du processeur et non pas la moitié...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  4. #4
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    ram_0000: De nos jours, pas mal de PCs ont au moins un processeur dual-core ou hyperthreadé.
    Et là, paralléliser le traitement sur deux threads permet à celui-ci d'utiliser la totalité du processeur et non pas la moitié...
    C'est vrai, j'avais oublié les multi core et autre CPU hyperthreadées. Mon poste est encore un mono core, mauvais réflexe.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

Discussions similaires

  1. Réponses: 1
    Dernier message: 10/04/2010, 09h10
  2. Utilisation des Delegate sur des Threads
    Par Freud44 dans le forum C#
    Réponses: 5
    Dernier message: 14/01/2010, 11h40
  3. Avis sur la bonne utilisation des Threads
    Par Pitivier dans le forum Général Java
    Réponses: 8
    Dernier message: 28/11/2006, 20h07
  4. Utilisation des threads
    Par Valinor dans le forum Linux
    Réponses: 2
    Dernier message: 30/11/2005, 16h41
  5. Utilisations des Threads
    Par phoenix440 dans le forum Réseau
    Réponses: 15
    Dernier message: 21/08/2005, 17h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo