Я столкнулся с тем же вопросом C++, что и количество процессоров на кластере HPC, но я понял, что при увеличении количества процессоров время выполнения также увеличилось. Я ожидал значительного снижения времени выполнения. Может ли кто-нибудь пролить свет в этом вопросе?Увеличенное исполнение TIme даже с увеличением количества процессоров, почему?
Ниже приведены мои времена выполнения на # из процессоров
Number of CPUs Problem size Time (seconds)
1 3000000 15.48
2 3000000 18.2
4 3000000 21.73
8 3000000 40.55
16 3000000 60.14
32 3000000 98.75
Мои мысли:
- Слишком много сообщений увеличилось между процессорами, что приводит к увеличению времени выполнения.
Возможно, это может помочь? [Как слишком много vCPU могут негативно повлиять на производительность] (http://www.gabesvirtualworld.com/how-too-many-vcpus-can-negatively-affect-your-performance/). Также взгляните на это: [Масштабируемость с фиксированным размером проблемы] (http://www.mcs.anl.gov/~itf/dbpp/text/node30.html) –
Является ли ваш код на C++ параллельным? Как вы его подаете? – Gilles