Open Source & Linux Lab

It's better when it's simple

User Tools

Site Tools


etc:blog:семинар_реализация_многопоточности_в_java

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
etc:blog:семинар_реализация_многопоточности_в_java [2012/11/30 11:43] – created kkvetc:blog:семинар_реализация_многопоточности_в_java [2012/11/30 15:05] (current) kkv
Line 5: Line 5:
 Основные тезисы: Основные тезисы:
  
-1) Из-за технических ограничений сложно наращивать частоту процессоров, но зато можно сделать много ядер; +  * Из-за технических ограничений сложно наращивать частоту процессоров, но зато можно сделать много ядер; 
-2) Существует много задач, которые допускают параллельное исполнение каких-то из своих подзадач; +  Существует много задач, которые допускают параллельное исполнение каких-то из своих подзадач; 
-3) Работа с памятью стала медленнее, чем выполнение инструкций процессора, в результате чего потребовались кеши; +  Работа с памятью стала медленнее, чем выполнение инструкций процессора, в результате чего потребовались кеши; 
-4) У подзадач могут быть какие-то общие данные, что влечёт необходимость обеспечивать когерентность кешей +  У подзадач могут быть какие-то общие данные, что влечёт необходимость обеспечивать когерентность кешей 
-5) Есть trade-off между производительностью и соответствием того, как исполняется код, интуитивным предположениям; +  Есть trade-off между производительностью и соответствием того, как исполняется код, интуитивным предположениям; 
-6) Например, reordering-и, появляющиеся в MESI при добавлении invalidate queue и write buffers; +  Например, reordering-и, появляющиеся в MESI при добавлении invalidate queue и write buffers; 
-7) Разработчики процессоров не могут знать заранее, когда reordering допустим, а когда нет. Это должны решать разработчики софта. Понятие memory model. Пример с memory barriers в терминах MESI. +  Разработчики процессоров не могут знать заранее, когда reordering допустим, а когда нет. Это должны решать разработчики софта. Понятие memory model. Пример с memory barriers в терминах MESI. 
-8) Причём тут java? Текущие абстракции. +  Причём тут java? Текущие абстракции. 
-9) Зачем нужны более высокоуровневые инструменты из JMM: атомарность, взаимное исключение, синхронизация потоков.+  Зачем нужны более высокоуровневые инструменты из JMM: атомарность, взаимное исключение, синхронизация потоков.
  
 О докладчике О докладчике
Line 22: Line 22:
  
  
-Участие в семинаре бесплатное, но требуется предварительная [[http://mit.spbau.ru/seminars_form|регистрацияъъ+Участие в семинаре бесплатное, но требуется предварительная [[http://mit.spbau.ru/seminars_form|регистрация]]
  
 Ресурсы: Ресурсы:
etc/blog/семинар_реализация_многопоточности_в_java.1354261429.txt.gz · Last modified: 2012/11/30 11:43 by kkv