Средства распараллеливания в Java 1.7 (jsr166y...) Михаил Пономаренко, Tech Lead компании Sigma Ukraine
Содержание
- 2. немного истории до java 1.5 были wait notify synchonized в 1.5 - jsr166 java.util.concurrent Future, ThreadExecutor
- 3. немного истории в 1.6 - jsr166x BlockingDeque ConcurrentNavigableMap, NavigableMap в 1.7 - jsr166y ForkJoinPool Phaser ParallelArray
- 4. java.util.concurrent.Phaser
- 5. java.util.concurrent.Phaser void startTasks(List tasks, final int iterations) { final Phaser phaser = new Phaser() { protected
- 6. Fork Join – рекурсивная декомпозиция если задача маленькая - посчитать если большая разбить и посчитать рекурсивно
- 7. JDK7 дает возможность дробить мелко Минимум взаимодействия Fork Join – рекурсивная декомпозиция
- 8. ForkJoin задача 1 2 3 ответ 4
- 9. Детали реализации дополнительной сихронизации не требуется старые разбиения "больше“ Поэтому: У каждого потока свой дек задачь
- 10. Детали реализации готово 100 100 готово готово Готово 50 50
- 11. ForkJoinTask protected abstract boolean exec() ForkJoinTask fork() Не ждет public final V join() То же но
- 12. RecursiveAction extends ForkJoinTask protected void compute() Посчитать Поделить Вызвать invokeAll Сделать join Нужно что то сделать,
- 13. Примеры Doug Lea
- 14. Результаты Doug Lea Быстрее раз процессоров
- 15. Пример 2^28 произвольных чисел double (2 гб) ForkJoinPool pool = new ForkJoinPool(p); SinCosHuge task = new
- 16. Пример import java.util.concurrent.RecursiveTask; public class SinCosHuge extends RecursiveTask { … protected Double compute() { if (to
- 17. Мои измерения Загрузка процессора 100% температура
- 18. Мои измерения, время выполнения. потоков время
- 19. потоков Во сколько раз медленнее минус один
- 20. Мои измерения – относительно самого быстрого потоков Относительная разница в скорости. %
- 21. А если по старому? ThreadExecutorPool Result add(double) waitDone fork ThreadPoolExecutor tpe = new ThreadPoolExecutor(p, p, 10,SECONDS,
- 22. Runnable.run if (to - from double rz = 0; for (int i = from; i rz
- 23. А если по старому? потоков Во сколько раз медленнее минус один
- 24. А если по старому Относительная разница в скорости. % Ниже = лучше потоков
- 25. ParallelArray Судя по всему НЕ попадет в JDK 1.7, но исходники доступны MapReduce в пределах одной
- 26. Пример IBM ParallelArray students = new ParallelArray (fjPool, data); double bestGpa = students.withFilter(isSenior).withMapping(selectGpa).max(); public class Student
- 27. Мой пример new long[16384 * 16384/8] - 1 гб рабочей памяти, double[16384 * 16384/2] – 6гб
- 28. Результаты потоков Во сколько раз медленнее
- 30. Скачать презентацию

























![Мой пример new long[16384 * 16384/8] - 1 гб рабочей памяти, double[16384](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/476848/slide-26.jpg)

В активе Группы компаний «РусЭнергоМир» множество успешно реализованных проектов для заказчиков энергетической отрасли, транспо
Фосфорная кислота
АРТИКУЛЯЦИОННАЯ ГИМНАСТИКА
Рынок ИС. Объекты на рынке
Регулирование физической нагрузки по показателям частоты сердечных сокращений
Адресация узлов сети
В защиту семьи. Семья – малая церковь
Материалы лекции
Презентация на тему Письменность и знания древних египтян
Поиск информации в сети Интернет
Электрические явления (9 класс)
Математический калейдоскоп
Модуль MIGRATE и другие средства импорта содержания в Drupal
Определение степени ответственности работника и предприятия при нарушении технологической и трудовой дисциплин
Uar - международнвй сайт и телеканал
Подходы к созданию интегрированных систем автоматизации зданий
Консультация для родителей. Особенности воображения у детей с нарушением речи
Правовые основы трудовой деятельности медработников. Понятие трудового права. Трудовой договор: понятие, содержание, виды
СМОЛЕНСК
Золотая осень. Составление рассказа
Fast Food
Повторим вводные слова и словосочетания
Сибирская язва
Виды сценариев.
Технологии развивающего обучения
Немного о современных танцах…
Силовые способности и их развитие
Методическая тема: «Внедрение в учебный процесс элементов УМК нового поколения по предмету: «Математические представления и конс