Crunchez vos adresses URL
|
Rejoignez notre discord
|
Hébergez vos photos
Affichage des résultats 1 à 29 sur 29
  1. #1
    Salut,

    D'apres mes connaissances (dites moi si je me trompe), dans une architecture multi-cpu, la quantite de memoire disponible va etre partagee entre les differents cpus.
    Donc si nous avons par exemple deux cpus avec un total de 4Go de memoire, chaque cpu pourra adresser 2Go au maximum.
    Est-ce le meme cas dans une architecture multi-core ?

    Mon probleme est le suivant, disons que j'ai une application mono-thread et tres gourmande en memoire. Bien que ne tirant pas partie du multi-threading ou multi-core ou multi-cpu, peut-on penser qu'elle fonctionnera moins bien dans ce type d'architecture avec 4Go de memoire que dans une architecture single-cpu avec 4Go de memoire ?

    Merci
    Il est des circonstances dans la vie où un homme quelqu'intelligent qu'il soit optempère à des raisons qui bien qu'aléatoires n'en sont pas moins impératives et absolues.
    No need to go to a mad house to see deranged minds, Earth is the asylum of the Universe.

  2. #2
    Multicore, la RAM est partagée
    Multi-CPU, ca dépend de l'architecture mémoire (NUMA oui, dans du SMP classique, c'est dédié, chaque socket CPU a ses brackets RAM).

    Voila (en espérant ne pas avoir dit trop de conneries...)

  3. #3
    Disons que dans mon cas on va etre sur une archi Dual Xeon Dual-Core...
    Je suppose que ce genre de raisonnement ne s'applique pas sur de l'HyperThreading ?
    Il est des circonstances dans la vie où un homme quelqu'intelligent qu'il soit optempère à des raisons qui bien qu'aléatoires n'en sont pas moins impératives et absolues.
    No need to go to a mad house to see deranged minds, Earth is the asylum of the Universe.

  4. #4
    Bon après invistigation, dans l'archi SMP UMA, tu peux aussi avoir de la mémoire partagée, et dans les archi NUMA, chaque CPU a également sa mémoire dédiée (les autres CPU peuvent également y accéder, mais il faut qu'il passent par le controleur mémoire de ce CPU).

    En gros, ca dépend (mais ca dépasse) :whistle:
    sur ce lien, http://www.materiel-informatique.be/smp.php, il montre une archi avec mémoire partagée, et en même temps, disent qu'on peut avoir des configs avec mémoire dédiée (4 CPU pour Sun)

  5. #5
    Tout depend du nombre de controleurs memoire auxquels tes cpus sont relies et si ton architecture est UMA ou NUMA (uniforme ou non uniforme) et si ton systeme d'exploitation sait optimiser pour une archi NUMA ou non.
    Pour resumer les offres disponibles en x86 a l'heure actuelle (il peut y avoir plusieurs core par socket):
    - AMD 1 socket et Intel n-socket = UMA, tout le monde a la meme latence et bande passante d'acces memoire pour l'ensemble de l'espace adressable disponible (d'ou le concept d'uniformite)
    - AMD n-socket = NUMA

    Si les archis NUMA semblent au premier abord problematique pour les applications que tu decris: single thread, tres large image memoire elles ne le sont pas tant que ca en pratique.

    Pour augmenter la capacite memoire dans les systemes haut de gamme on arrive generalement a la solution de multiplier les controleurs memoire. Dans le cas UMA on payera systematiquement le pire des cas en latence au nom de l'uniformite alors que dans le cas NUMA on ne payera que ce qui est necessaire.

    La principale difficulte pour les systemes NUMA n'est donc aps la latence, mais la bande passante, en effet maintenir la meme bande passante vers un controleur eloigne que vers un controleur proche est particulierement difficile. En pratique cela ne pose que rarement un probleme car lorsque l'on a des applis multithreadees sur un systeme NUMA on peut avoir un systeme d'exploitation qui optimise le placement des pages en memoire de maniere a utiliser un maximum les pages locales plutot que celles qui sont eloignees. Cela ne s'applique pas dans ton cas par contre.
    Si on revient au probleme du Intel contre AMD, du point de vue de la bande passante les systeme AMD NUMA ne sont pas defavorises, meme en single thread car la bande passante memoire totale des systemes Intel UMA est limitee par le(s) bus partages dont la bande passante est inferieure au lien Hypertransport reliant les differents socket de ton systeme NUMA AMD (dans le cas d'1 thread et d'un systeme NUMA c'est ce lien entre les cores qui est le facteur limitant la bande passante).

    PS: 4Go de memoire ce n'est pas considere comme une grosse consommation, ma dissertation ci-dessus s'applique plus aux systemes qui ont besoin de plus de 4 socket memoire, donc 16GB et +. En effet avec 4Go tu restes avec 1 seul controleur memoire pour les systemes UMA donc la latence moyenne de ton systeme NUMA risque d'etre plus forte, meme si sa bande passante reste plus elevee (HT > FS.

    Mmmm je me demande si c'est clair tout ca.
    fefe - Dillon Y'Bon

  6. #6
    Et parce que on a souvent la réponse à portée de main : :whistle:
    http://www.x86-secret.com/articles/c...quadcore-4.htm

    => Mémoire partagée

    Edit :
    enfin, là, c'est du quad core, et apparemment, y a différents modes de partages de la mémoire (voir tableau raid-like).
    +
    "Intel à opté pour de la mémoire divisée pour chaque CPU. Tous les CPUs ont ainsi leur bande passante de mémoire dédiée et ne risquent pas de saturer si un des autres requiert une grosse capacité de mémoire."

  7. #7
    Ok je vois, merci fefe et Yasko.
    Donc si je suis votre raisonnement, je ne devrais pas constater d'impacts flagrants sur le fonctionnement de mon systeme que je sois sur une archi Dual Xeon Dual Core ou sur une archi Pentium/Xeon HyperThreading avec la meme quantite de memoire (4Go).
    J'avais oublie de le preciser mais tout ce joli monde tourne sous XP 32Bits, dsl...
    Il est des circonstances dans la vie où un homme quelqu'intelligent qu'il soit optempère à des raisons qui bien qu'aléatoires n'en sont pas moins impératives et absolues.
    No need to go to a mad house to see deranged minds, Earth is the asylum of the Universe.

  8. #8
    Cela dependra essentiellement du chipset utilise sur ta plateforme dual xeon dual core: si tu utilise un chipset de type serveur (dual fsb, dual controleur memoire et fbd) ta latence memoire sera moins bonne que si tu utilises un chipset de type desktop (single fsb, single controleur memoire et ddr) et dans le cas d'applications single thread tu n';auras aucun benefice en bande passante.

    Pourquoi tu veux acheter un dual socket dual core pour faire tourner une appli single thread (Si tu avais besoin de 16GB de memoire ou plus ca serait inevitable mais a 4Go il y a pas d'interet visible).

    En gros sur une appli single thread avec 4GB de memoire un Conroe a 2.93 avec de la DDR sera probablement plus performant qu'un Woodcrest a 3GHz avec de la FBD sur chipset blackford.
    fefe - Dillon Y'Bon

  9. #9
    Attention les applis qui demandent plus de 2Go de memoire virtuelle sous un OS 32-bits doivent être programmées pour. Sinon elles sont limitées à ces 2 Go.
    "si tout le monde s'etait dit "pour quoi faire ?" je pense qu'on tournerait encore sur 8086. Si tant est qu'on ait l'electricite ... " Franck@X86
    If all goes well will Dell sell Cells?
    <°)))><

  10. #10
    Ce n'est pas vraiment moi...
    Il se trouve qu'un de nos clients s'est retrouve a acheter ce type de configuration (surement du Dell, donc je ne connais pas le chipset) suite a de mauvaises informations. Le fait est que quand il fait ses tests, la machine single cpu (hyperthreading je pense vu que le CPU est a 3.5GHz) semble plus veloce que son Dual Xeon.
    Je voulais juste etre sur que cette archi n'allait pas penaliser notre systeme meme si ca ne sert strictement a rien (ca je le savais deja, mais c'est pas moi qui donne les conseils...)
    Il est des circonstances dans la vie où un homme quelqu'intelligent qu'il soit optempère à des raisons qui bien qu'aléatoires n'en sont pas moins impératives et absolues.
    No need to go to a mad house to see deranged minds, Earth is the asylum of the Universe.

  11. #11
    Jihef, je croyais qu'il existait une option dans le boot de windows, pour faire en sorte d'utiliser 3Go de memoire au lieu des 2 normalement.
    Donc tu te retrouves en faite avec 1Go pour le Kernel et 2Go pour les applis au lieu du 1/1.
    Il est des circonstances dans la vie où un homme quelqu'intelligent qu'il soit optempère à des raisons qui bien qu'aléatoires n'en sont pas moins impératives et absolues.
    No need to go to a mad house to see deranged minds, Earth is the asylum of the Universe.

  12. #12
    Citation Envoyé par ToToNaBuKo
    Jihef, je croyais qu'il existait une option dans le boot de windows, pour faire en sorte d'utiliser 3Go de memoire au lieu des 2 normalement.
    Donc tu te retrouves en faite avec 1Go pour le Kernel et 2Go pour les applis au lieu du 1/1.
    Oui mais il faut qu'il y ait un flag dans le binaire pour que l'appli puisse utiliser ce Go supplémentaire. Apres c'est peut-être possible de mettre ce flag à la main directement dans l'exe.

    Il y a aussi possibilité d'utiliser beaucoup plus de mémoire que ces 2-3Go mais la, sous Windows, il faut utiliser l'API qui va bien pour y avoir accés. C'est grace à l'adressage sur 36-bits que c'est possible(PAE ou PSE il me semble)

    EDIT : http://www.microsoft.com/whdc/system...AE/PAEmem.mspx

    Il faut XP pro pour le switch /3GB
    "si tout le monde s'etait dit "pour quoi faire ?" je pense qu'on tournerait encore sur 8086. Si tant est qu'on ait l'electricite ... " Franck@X86
    If all goes well will Dell sell Cells?
    <°)))><

  13. #13
    Le PAE, ça permet de gérer 64 Go de mémoire, mais on reste à 2/3 Go par applications, il me semble (c'est une bidouille depuis le PPRO).

  14. #14
    Citation Envoyé par dandu
    Le PAE, ça permet de gérer 64 Go de mémoire, mais on reste à 2/3 Go par applications, il me semble (c'est une bidouille depuis le PPRO).
    Sous Win en utilisant AWE (Address Windowing Extension), on peut dépasser cette limite mais on revient à un modèle de mémoire segmenté.
    "si tout le monde s'etait dit "pour quoi faire ?" je pense qu'on tournerait encore sur 8086. Si tant est qu'on ait l'electricite ... " Franck@X86
    If all goes well will Dell sell Cells?
    <°)))><

  15. #15
    Comme avec les 8086 ?

    ahhhhhh, à l'aide quoi. C'est un des trucs les pire que j'ai vu, les segments en asm

  16. #16
    En fait c'est comme au temps des gestionnaires de mémoires étendue sous dos. On peut mapper une partie de la mémoire supplémentaire dans l'espace d'adressage linéaire. En changeant de page on peut ainsi accéder à la mémoire "étendue".
    "si tout le monde s'etait dit "pour quoi faire ?" je pense qu'on tournerait encore sur 8086. Si tant est qu'on ait l'electricite ... " Franck@X86
    If all goes well will Dell sell Cells?
    <°)))><

  17. #17
    En effet jihef, je ne me souvenais plus de ce point et du fait que les applications devaient gerer ca. Merci.
    Il est des circonstances dans la vie où un homme quelqu'intelligent qu'il soit optempère à des raisons qui bien qu'aléatoires n'en sont pas moins impératives et absolues.
    No need to go to a mad house to see deranged minds, Earth is the asylum of the Universe.

  18. #18
    Citation Envoyé par jihef
    EDIT : http://www.microsoft.com/whdc/system...AE/PAEmem.mspx

    Il faut XP pro pour le switch /3GB
    Le switch /3GB passe aussi sur la version home.

    D'une manière générale il faut faire attention, il y a parfois des soucis avec certains drivers, et dans ces cas, il faut ajouter /USERVA=xxxx
    Avec xxxx type 2900 (Mb) ou moins

    Les applis compatibles avec ce fonctionnement sont dites "Large Address Aware".
    Certaines qui ne sont pas compatibles à l'origine, peuvent le devenir avec editbin, ou bien plus simplement avec un petit utilitaire nommé "Laatido".
    Je n'ai pas le lien en tête, mais je pourrais le retrouver si necessaire.
    'fin bon, ce "patchage" ne fonctionne pas tout le temps.

  19. #19
    Citation Envoyé par Stéphane.P
    Le switch /3GB passe aussi sur la version home.

    D'une manière générale il faut faire attention, il y a parfois des soucis avec certains drivers, et dans ces cas, il faut ajouter /USERVA=xxxx
    Avec xxxx type 2900 (Mb) ou moins

    Les applis compatibles avec ce fonctionnement sont dites "Large Address Aware".
    Certaines qui ne sont pas compatibles à l'origine, peuvent le devenir avec editbin, ou bien plus simplement avec un petit utilitaire nommé "Laatido".
    Je n'ai pas le lien en tête, mais je pourrais le retrouver si necessaire.
    'fin bon, ce "patchage" ne fonctionne pas tout le temps.

    J'ai testé avec un Java 1.5 et editbin, ça marche très bien.

  20. #20
    Je prefere eviter ce genre de solution, c'est en ensemble de binaires donc il faudrait tester les impacts etc...
    Il est des circonstances dans la vie où un homme quelqu'intelligent qu'il soit optempère à des raisons qui bien qu'aléatoires n'en sont pas moins impératives et absolues.
    No need to go to a mad house to see deranged minds, Earth is the asylum of the Universe.

  21. #21
    Citation Envoyé par cheap cigarette
    i'm agree with totonabuko
    I agree you casse yourself d'ici.
    "si tout le monde s'etait dit "pour quoi faire ?" je pense qu'on tournerait encore sur 8086. Si tant est qu'on ait l'electricite ... " Franck@X86
    If all goes well will Dell sell Cells?
    <°)))><

  22. #22
    plaf, disparu le spam... mais pour autant, la réponse subtile de jihef est conservé grace au quote
    Mes propos n'engagent personne, même pas moi.

  23. #23
    Citation Envoyé par Neo_13
    plaf, disparu le spam... mais pour autant, la réponse subtile de jihef est conservé grace au quote
    Tres fin ! Pouquoi ne pas avoir effacé mon post aussi ?
    "si tout le monde s'etait dit "pour quoi faire ?" je pense qu'on tournerait encore sur 8086. Si tant est qu'on ait l'electricite ... " Franck@X86
    If all goes well will Dell sell Cells?
    <°)))><

  24. #24

  25. #25
    Citation Envoyé par Fanche
    parce que c'est drôle!!??


    voilà
    Mes propos n'engagent personne, même pas moi.

  26. #26
    Citation Envoyé par Neo_13
    voilà
    Ca sent la sincérité.
    "si tout le monde s'etait dit "pour quoi faire ?" je pense qu'on tournerait encore sur 8086. Si tant est qu'on ait l'electricite ... " Franck@X86
    If all goes well will Dell sell Cells?
    <°)))><

  27. #27
    Citation Envoyé par jihef
    Ca sent la sincérité.
    sisi, je t'assure... J'ai rigolé en lisant ton post, alors je l'ai laissé... Vraiment.
    Mes propos n'engagent personne, même pas moi.

  28. #28
    Pareil que Neo
    fefe - Dillon Y'Bon

  29. #29
    jihef, on ne se moque pas non plus; et puis je rajouterai que comme ton post n'est pas du spam, qu'il n'est pas en désaccord avec la charte du site, il n'a pas à être suprimé non?

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •