compka
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Здравствуйте, мне срочно нужна помощь по параллельному программированию так называемой Knapsack problem. код написан на UPC (unified parallel C). моя проблема в том что параллельный код на одном процессоре дает результат за 30 секунд, тогда как серийный код за 2 секунды. при увеличении числа процессоров до 16 масштабируется как-то то есть для 2 проц. - 20 сек, 4 проц. - 14 сек., 8 проц. - 8 сек. 16 проц. - 24, затем время начинает увеличиваться при увеличении числа процессоров. я попровал много вариантов и я новичок в параллельном программировании. результаты все те же. мог бы кто-нибудь дать совет каким принципам нужно следовать. если кто-то имеет опыт работы с UPC могу выложить код. |