Re: Parallel Extentions. Проблема.
От: Kore Sar  
Дата: 09.12.08 08:52
Оценка: 1 (1) :)
Здравствуйте, мои дорогие все.

Этим коротким зимним днём я решил вам поведать чем у меня всё это дело закончилось. Если вкратце, то на 2-х ядерных ускорение в 6 раз, на 8-ми ядерных ускорение 14 раз. На большем кол-ве ядер ускорей всё то же — 14 раз.

Что же мне помогло.
* Советы лучше гранулировать lock-и помогли. В некоторых местах lock-и обнимали слишком много кода.
* И совет лочить сам словарь
Автор: Serginio1
Дата: 10.11.08
тоже очень помог.
* Дельный совет попрофайлить
Автор: Константин Л.
Дата: 10.11.08
указал на бэкап данных. Мы его убрали (точнее сделали опциональным, но по-умолчанию выключеным). Это дало прирост в 2-3 раза.
* Еще я кое-где поускорял работу со словарями — это дало прирост 1.5 раза.
* Советы разбить на несколько словарей и в конце их смержить (здесь
Автор: samius
Дата: 10.11.08
и здесь
Автор: vdimas
Дата: 11.11.08
) было сложно заимплементить. НО! Я ж вам не сказал, что на самом деле у меня не один файл, а больше 10. Каждый по 1.5ГБ размером, в каждом 50 млн записей. Поэтому всё оказалось проще. Т.е. мне не пришлось шамашнить со словарями, а просто запустил обработку каждого файла в свою собственную агрегацию (агрегация — это набор из кучи вложенных друг в друга словарей). Конечно, пришлось писать код, который мержил все данные в одну финальную агрегацию.

Вся работа отняла 3 недели, но осчастливило заказчика до состояния эйфории. А мне даже прилично так зарплату подняли.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.