среда, 26 мая 2010 г.

Эксперимент: Mutex vs MultiCore часть 2

Почесав репу некоторое время, т.е. подумав: что же это за фигня такая и как интерпретировать полученный результат?


И думаю ответ тут вот какой:
1. Потоки выстраивались в очередь, по понятной причине (нет полезной работы кроме захвата мьютекса)
2. Синхронизация кэшей между ядрами одного процессора (два соседних ядра внутри QuadCore), где-то 50-100 тактов
3. Синхронизация кэшей между ядрами разных процессоров (2 проца внутри QuadCore), где-то 600 тактов
теперь  производим простые вычисления:
Tsync - пенальти за синхронизацию в тактах
N - количество потоков
Hz - частота
M - количество циклов (количество захватов мьютекса на один поток)
T - суммарное пинальти
T = Tsync*N*M/Hz
И получаем около 7 секунд для пукта 2 и около 80 секунд для пункта 3 при частоте 3GHz
Что более менее коррелирует с результатами теста.

За истекшее время я еще немного поупражнялся на том же самом тесте (чуть позже я его выложу)
И выявил примерно следующее соотношение: время под мьютексом + пенальти должно составлять не более 2-5 % от времени выполнения цикла для достижения линейного масштабирования, в противном случае коэффициент масштабирования будет стремительно снижаться вплоть до линейной деградации.

5 комментариев:

  1. Этот комментарий был удален автором.

    ОтветитьУдалить
  2. Этот комментарий был удален автором.

    ОтветитьУдалить
  3. Этот комментарий был удален автором.

    ОтветитьУдалить
  4. Winbuzz offers a simple and user-friendly platform for those interested in cricket betting and casino games. It provides clear instructions on how to access a cricket ID and manage deposits and withdrawals without confusion. The platform keeps everything well-organized for easy use. You can start your journey with Winbuzz and handle your Cricket Id smoothly.

    ОтветитьУдалить
  5. ReddyBook provides a convenient platform for users. When you visit ReddyBook, you can easily navigate. Getting a Cricket ID is simple. It also offers guidance about deposits and withdrawals.

    ОтветитьУдалить