История изменений
Исправление anonymous_incognito, (текущая версия) :
Столяр - очень глубокий тип. Временами я выныриваю из тусни, как-то ухожу в свои проекты, потом открываю трехтомник Столяра и как правило стал поражаться площади которую Столяр покрыл. Всё он знает, во всем он шарит.
Я тоже кое-что скажу, Столяр во многом шарит, но как уже тут заметили, реальной критики он не терпит, а по некоторым вопросам доходит даже не до спорных положений, а до чего-то на грани кретинизма.
Высказывание про СУБД ещё не самый кринж. http://stolyarov.info/guestbook/archive/11/#cmt194
Многоядерные процессоры — это самое дебильное, что было придумано в компьютеростроении за всю его историю. Я бы сказал, вызывающе дебильное.
Это написано в 2025-м году!
Непонятно только гуру считает, что закон Амдала не позволяет эффективно использовать много процессоров (ядер) или что, что юзверям негде использовать много ядер. Склонен полагать, что гуру считает себя очень умным из-за закона Амдала. Это как-то так следует из стиля в учебнике и некоторых других высказываний у него в гостевой по поводу ускорения вычислений. Но он тогда сильно ошибается.
В учебнике стр. 169 в издании 2.9 во 2-м томе. (7-я глава про параллельные вычисления) он приводит формулу закона и красочно описывает, что при издержках в 25% (которые ещё хорошие) 10 процессоров ускорят только чуть более, чем втрое. На 3.5 уйдёт 21 процессор, а в 4 раза быстрее не будет никогда. А если даже гении смогут только 5% оставить у какой-то задачи на оверхед, что обычно нереально, то теоретический предел 20 раз, на 10 крат - 21 процессор, 15 крат - 57 и далее совсем плохо.
Если кивать на закон Амдала, то тут предел ускорения для нескольких CPU (ядер), касается только одного из возможных способов применения параллелизма, а именно, когда неизменный объём вычислений можно раздербанить (в терминологии Столярова) на параллельные ветви, работающие с этим объёмом.
Но возможно получить ускорение не времени вычислений, а объёма вычисленных данных за неизменный промежуток времени. Именно то, что происходит в распределённых вычислениях на куче компьютеров. То что происходит при параллельной компиляции исходников программ и др. Такое ускорение даже получило название закона Густафсона (J.Gustafson). Вот его статья 1988-го года Reevaluating Amdahl's law (ссылка на web archive)
В этом случае ускорение может быть сформулировано как S(p, 𝛼) = p + (1-p)*𝛼 и например, для 𝛼 = 0.25 для 10 процессоров имеем ускорение S = 7.75, хотя по Столярову уже в 4 раза невозможно было бы. И даже на 100 процессорах, ускорение будет 75.25
То есть, мы можем на одноядерном процессоре 10 Мб данных в RAM обработать нужной нам функцией за 1 секунду. Закон Амдала нам не даст на 10-ядерном процессоре более, чем в 3.08 раз (25% непараллельных вычислений) ускорить вычисление 10 Мб данных, но зато, в соответствии с Густафсоном, мы можем 77.5 Мб обработать за ту же 1 секунду.
Возможно и сочетание одного с другим, 4 ядра на параллельных вычислениях дадут даже по закону Амдала ускорение в 2.29 раз.
Ну и как, многоядерные процессоры - вызывающе дебильны, да?
Можно ещё вспомнить, что к моменту появления многоядерных процессоров увеличение частоты зашло в тупик и за более, чем 20 лет она выросла разве что в полтора раза.
Если же ему кажется, что быстрые вычисления и не нужны, а вместо наваливания многоядерности лучше был делали компактные и с малыми ваттами одноядерные, то это и вовсе ограниченность своим мирком. Ему, положим, не нужны, другим - нужны и ничего в этом дебильного нет. А маломощные процессоры существуют, даже среди x86-х есть одно- и малоядерные на 5-10 Вт максимум. Даунклокинг с даунвольтами тоже никто не отменял.
В обоих случаях он сильно ошибается. Но гуру по поводу Амдала и Густафсона не захотел ответить. Его право, конечно, но не тогда, когда студентов учит, что многоядерные процессоры вызывающе дебильны.
Можешь попробовать его спросить про применимость закона Амдала и многоядерность.
Исправление anonymous_incognito, :
Столяр - очень глубокий тип. Временами я выныриваю из тусни, как-то ухожу в свои проекты, потом открываю трехтомник Столяра и как правило стал поражаться площади которую Столяр покрыл. Всё он знает, во всем он шарит.
Я тоже кое-что скажу, Столяр во многом шарит, но как уже тут заметили, реальной критики он не терпит, а по некоторым вопросам доходит даже не до спорных положений, а до чего-то на грани кретинизма.
Высказывание про СУБД ещё не самый кринж. http://stolyarov.info/guestbook/archive/11/#cmt194
Многоядерные процессоры — это самое дебильное, что было придумано в компьютеростроении за всю его историю. Я бы сказал, вызывающе дебильное.
Это написано в 2025-м году!
Непонятно только гуру считает, что закон Амдала не позволяет эффективно использовать много процессоров (ядер) или что, что юзверям негде использовать много ядер. Склонен полагать, что гуру считает себя очень умным из-за закона Амдала. Это как-то так следует из стиля в учебнике и некоторых других высказываний у него в гостевой по поводу ускорения вычислений. Но он тогда сильно ошибается.
В учебнике стр. 169 в издании 2.9 во 2-м томе. (7-я глава про параллельные вычисления) он приводит формулу закона и красочно описывает, что при издержках в 25% (которые ещё хорошие) 10 процессоров ускорят только чуть более, чем втрое. На 3.5 уйдёт 21 процессор, а в 4 раза быстрее не будет никогда. А если даже гении смогут только 5% оставить у какой-то задачи на оверхед, что обычно нереально, то теоретический предел 20 раз, на 10 крат - 21 процессор, 15 крат - 57 и далее совсем плохо.
Если кивать на закон Амдала, то тут предел ускорения для нескольких CPU (ядер), касается только одного из возможных способов применения параллелизма, а именно, когда неизменный объём вычислений можно раздербанить (в терминологии Столярова) на параллельные ветви, работающие с этим объёмом.
Но возможно получить ускорение не времени вычислений, а объёма вычисленных данных за неизменный промежуток времени. Именно то, что происходит в распределённых вычислениях на куче компьютеров. То что происходит при параллельной компиляции исходников программ и др. Такое ускорение даже получило название закона Густафсона (J.Gustafson). Вот его статья 1988-го года Reevaluating Amdahl's law (ссылка на web archive)
В этом случае ускорение может быть сформулировано как S(p, 𝛼) = p + (1-p)*𝛼 и например, для 𝛼 = 0.25 для 10 процессоров имеем ускорение S = 7.75, хотя по Столярову уже в 4 раза невозможно было бы. И даже на 100 процессорах, ускорение будет 75.25
То есть, мы можем на одноядерном процессоре 10 Мб данных в RAM обработать нужной нам функцией за 1 секунду. Закон Амдала нам не даст на 10-ядерном процессоре более, чем в 3.08 раз (25% непараллельных вычислений) ускорить вычисление 10 Мб данных, но зато, в соответствии с Густафсоном, мы можем 77.5 Мб обработать за ту же 1 секунду.
Возможно и сочетание одного с другим, 4 ядра на параллельных вычислениях дадут даже по закону Амдала ускорение в 2.29 раз.
Ну и как, многоядерные процессоры - вызывающе дебильны, да?
Можно ещё вспомнить, что к моменту появления многоядерных процессоров увеличение частоты зашло в тупик и за более, чем 20 лет она выросла разве что в полтора раза.
Если же ему кажется, что быстрые вычисления и не нужны, а вместо наваливания многоядерности лучше был делали компактные и с малыми ваттами одноядерные, то это и вовсе ограниченность своим мирком. Ему, положим, не нужны, другим - нужны и ничего в этом дебильного нет. А маломощные процессоры существуют, даже среди x86-х есть одно- и малоядерные на 5-10 Вт максимум. Даунклокинг с даунвольтами тоже никто не отменял.
В обоих случаях он сильно ошибается. Но гуру по поводу Амдала и Густафсона не захотел ответить. Его право, конечно, но не тогда, когда студентов учит, что многоядерные процессоры вызывающе дебильны.
Исходная версия anonymous_incognito, :
Столяр - очень глубокий тип. Временами я выныриваю из тусни, как-то ухожу в свои проекты, потом открываю трехтомник Столяра и как правило стал поражаться площади которую Столяр покрыл. Всё он знает, во всем он шарит.
Я тоже кое-что скажу, Столяр во многом шарит, но как уже тут заметили, реальной критики он не терпит, а по некоторым вопросам доходит даже не до спорных положений, а до чего-то на грани кретинизма.
Высказывание про СУБД ещё не самый кринж. http://stolyarov.info/guestbook/archive/11/#cmt194
Многоядерные процессоры — это самое дебильное, что было придумано в компьютеростроении за всю его историю. Я бы сказал, вызывающе дебильное.
Это написано в 2025-м году!
Непонятно только гуру считает, что закон Амдала не позволяет эффективно использовать много процессоров (ядер) или что, что юзверям негде использовать много ядер. Склонен полагать, что гуру считает себя очень умным из-за закона Амдала. Это как-то так следует из стиля в учебнике и некоторых других высказываний у него в гостевой по поводу ускорения вычислений. Но он тогда сильно ошибается.
В учебнике стр. 169 в издании 2.9 во 2-м томе. (7-я глава про параллельные вычисления) он приводит формулу закона и красочно описывает, что при издержках в 25% (которые ещё хорошие) 10 процессоров ускорят только чуть более, чем втрое. На 3.5 уйдёт 21 процессор, а в 4 раза быстрее не будет никогда. А если даже гении смогут только 5% оставить у какой-то задачи на оверхед, что обычно нереально, то теоретический предел 20 раз, на 10 крат - 21 процессор, 15 крат - 57 и далее совсем плохо.
Если кивать на закон Амдала, то тут предел ускорения для нескольких CPU (ядер), касается только одного из возможных способов применения параллелизма, а именно, когда неизменный объём вычислений можно раздербанить (в терминологии Столярова) на параллельные ветви, работающие с этим объёмом.
Но возможно получить ускорение не времени вычислений, а объёма вычисленных данных за неизменный промежуток времени. Именно то, что происходит в распределённых вычислениях на куче компьютеров. То что происходит при параллельной компиляции исходников программ и др. Такое ускорение даже получило название закона Густафсона (J.Gustafson). Вот его статья 1988-го года Reevaluating Amdahl's law (ссылка на web archive)
В этом случае ускорение может быть сформулировано как S(p, 𝛼) = p + (1-p)*𝛼 и например, для 𝛼 = 0.25 для 10 процессоров имеем ускорение S = 7.75, хотя по Столярову уже в 4 раза невозможно было бы. И даже на 100 процессорах, ускорение будет 75.25
То есть, мы можем на одноядерном процессоре 10 Мб данных в RAM обработать нужной нам функцией за 1 секунду. Закон Амдала нам не даст на 10-ядерном процессоре более, чем в 3.08 раз (25% непараллельных вычислений) ускорить вычисление 10 Мб данных, но зато, в соответствии с Густафсоном, мы можем 77.5 Мб обработать за ту же 1 секунду.
Возможно и сочетание одного с другим, 4 ядра на параллельных вычислениях дадут даже по закону Амдала ускорение в 2.29 раз.
Ну и как, многоядерные процессоры - вызывающе дебильны, да?
Можно ещё вспомнить, что к моменту появления многоядерных процессоров увеличение частоты зашло в тупик и за более, чем 20 лет она выросла разве что в полтора раза.
Если же ему кажется, что быстрые вычисления и не нужны, а вместо наваливания многоядерности лучше был делали компактные и с малыми ваттами одноядерные, то это и вовсе ограниченность своим мирком. Ему, положим, не нужны, другим - нужны и ничего в этом дебильного нет. А маломощные процессоры существуют, даже среди x86-х есть одно- и малоядерные на 5-10 Вт максимум. Даунклокинг с даунвольтами тоже никто не отменял.
В обоих случаях он сильно ошибается. Но гуру по поводу Амдала и Густафсона не захотел ответить. Его право, конечно, но не тогда, когда студентов учит, что многоядерные процессоры вызывающе дебильны.
Может вам, что скажет?