Спасибо за интервью, помогает вспомнить что делал в университетское время... Если до сих пор работают такие люди - еще не все потеряно )
@ultimate_engineer
Ай бұрын
Спасибо вам! Нам тоже радостно работать бок о бок с такими профессионалами!
@usergnusmas6879
Ай бұрын
Вот, это настоящий инженер. Интересно, чем занимаются такие люди.
@ultimate_engineer
Ай бұрын
Спасибо! Стремимся выбирать интересных гостей!
@MaruiInfantry
Ай бұрын
Ничем. Они кодили в те времена, когда ты приходишь и на Си + asm пишешь такой говнокод, что ужас. Всё в монолитах и экстернах. Пишет какое-то Фурье или FFT на массивчиках. Больше ничего. Скорее всего он не сможет написать SQL-запрос даже для простейшей СУБД. Не говоря уже о том, чо NoSQL или темболее NewSQL. Возможно он из головы напишет какой-то FFT на C + SIMD, но это уже не нужно.
@usergnusmas6879
Ай бұрын
@@MaruiInfantry на самом деле печально, что такие люди мнение востребованы на рынке труда, мне кажется, это несправедливым. Ведь они обладают уникальным опытом.
@z140140
Ай бұрын
@@MaruiInfantry мы например пишем те самые sql-движки :) или те же FFT, которые улучшают качество твоих фоток. или библиотеки deep learning, которые используют для LLM
@z140140
Ай бұрын
@@usergnusmas6879 они не востребованы в небольших компаниях. в янлексе или вк такие люди уже есть. в гугле или ms их сильно больше. плюс есть технологические стартапы, типа clickhouse
@taraslitvinenko8651
Ай бұрын
Большое спасибо, за такие интервью, очень интересно 😊
@ultimate_engineer
Ай бұрын
Рады, что вам понравился выпуск!
@Slesar.
Ай бұрын
Елы палы, 30 лет в программировании, но только правда в основном прикладных задач, свое время от нечего делать наизусть учил книжку по процессорам Интел пятого поколения, правда в реальной жизни эти предметные знания так и не пригодилось, а сейчас даже половину сказанного плохо понимаю, о чем дядька говорит. Собственно, от программирования ПК давно ушел в область программирования МК, а теперь еще и ПЛИС, там интересней, по тому что в одиночку можешь делать и сопровождать готовые проекты под МК, считай все время делать свои собственные почти уникальные мини системы, это доставляет больше удовольствия. А программирование реальных приложений ПК, это в основном командная работа, что меня никак не привлекает.
@user-np9pn9nm2q
Ай бұрын
Чего только на ютубе не встретишь. Спасибо! Видео огонь!
@evgeniybeschastnov4627
22 күн бұрын
Я тоже вводил бинарный код переключателями в Политехе. И тоже дебажил на бумажке. Замечательное было время!
@DAlexMaster
Ай бұрын
Как правильно заметил Астахов про оптимизацию алгоритмов свёртки сигналов посредством перехода из времЕнной области в частотную (ДПФ) и обратно, существенно сокращается время вычислений прохождения сигнала через фильтр. Гениальный подход, придуманный много десятилетий назад, позволяющий строить менее требовательные к аппаратному обеспечению системы. Ещё будучи студентом восхищался такими фокусами с преобразованием Фурье, особенно при взятии "неберущихся" интегралов :)
@nikolaykozlov4888
Ай бұрын
Как же круто!
@sergeykirdyankin7027
Ай бұрын
IIR без обратной связи это как? Хотелось бы посмотреть на блок схему, и чуть подробнее о перерасчёте коэффициентов. Статьи на эту тему не публиковали, где нибудь на IEEE?
@ultimate_engineer
Ай бұрын
Статью такую не готовили ещё, но спасибо за идею! Если опубликуем, то пришлем в эту ветку ссылку :)
@nangelo0
Ай бұрын
Очень крутой выпуск!!!
@ultimate_engineer
Ай бұрын
Спасибо! Рады, что было интересно!
@kuqmua755
Ай бұрын
Интересно. Спасибо
@ultimate_engineer
Ай бұрын
Приятно! Спасибо вам!
@z140140
Ай бұрын
1. у dec были только 12, 16, 18, 32, 36 и 64-битные машинки. а 24-битным был, например, первый миник cdc 2. первая реализация бейсика была компилирующей, многопользовательской, со встроенным многопользовательским редактором и требовала для работы двух компов с памятью тоже несколько десятков КБ 3. у P4 был именно кеш декодированных инструкций (Trace cache), а декодирование шло по одной инструкции за такт
@fhtagnfhtagn
Ай бұрын
Народ, объясните, что за ботва с AVX2 и AVX512, они там совсем обленилсь?! Вот раньше был MMX, на нём были унпаки: bw, wd, dq. Потом MMX удвоился до SSE2, на него перенеслись те же унпаки с той же логикой. А последующие удвоения до AVX2 и затем до AVX512 старую логику не сохранили. Неужели так сложно было? Раньше как-то справлялись, а теперь почему-то нет. Теперь там работа идёт с отдельными 128-битными блоками. Одна половина не знает, что делает другая. Если на AVX2 логику унпаков можно починить, добавив парочку _mm256_permute2f128_si256(), то на AVX512 подобного, получается, вообще нету!
@karel.77
Ай бұрын
Тебе к мужику с видео надо...
@FULLTILTSWIFF
Ай бұрын
Одной из ключевых особенностей AVX-512 является введение маскирования. Маскирование позволяет выполнять операции над выбранными элементами вектора, игнорируя остальные. Это даёт программистам больше контроля над тем, какие данные обрабатываются, и может помочь оптимизировать вычисления, избегая ненужных операций. Пример использования маскирования в AVX-512: __m512i a = _mm512_set1_epi32(10); // Вектор A заполнен числом 10 __m512i b = _mm512_set1_epi32(20); // Вектор B заполнен числом 20 __mmask16 mask = 0b1010101010101010; // Маска для выбора каждого второго элемента // Сложение с использованием маски: только элементы, соответствующие маске, будут сложены __m512i result = _mm512_mask_add_epi32(a, mask, a, b); В этом примере, только элементы вектора a, которые соответствуют маске mask, будут сложены с соответствующими элементами вектора b. Также AVX-512 вводит операции с разреженными данными и конфликтные инструкции обнаружения, которые могут быть полезны для оптимизации алгоритмов с непредсказуемым доступом к памяти. Использование векторизации для умножения двух матриц может быть реализовано следующим образом: void matrix_multiply_avx512(float* A, float* B, float* C, int N) { for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { __m512 sum = _mm512_setzero_ps(); for (int k = 0; k < N; k += 16) { __m512 a = _mm512_load_ps(A + i * N + k); __m512 b = _mm512_load_ps(B + k * N + j); sum = _mm512_fmadd_ps(a, b, sum); } _mm512_store_ps(C + i * N + j, sum); } } } Маскирование в AVX-512 позволяет выполнять операции только над теми элементами данных, которые соответствуют определённому условию. Это может быть полезно, например, при обработке данных с пропусками или при выполнении операций, которые должны быть применены не ко всем элементам массива. __m512i data = _mm512_load_epi32(...); // Загрузка данных __mmask16 mask = _mm512_cmp_epi32_mask(data, _mm512_set1_epi32(0), _MM_CMPINT_NE); // Создание маски для ненулевых элементов __m512i result = _mm512_mask_add_epi32(_mm512_set1_epi32(1), mask, data, _mm512_set1_epi32(100)); Прибавление 100 только к ненулевым элементам AVX-512 вводит специальные инструкции для работы с разреженными данными, что может быть полезно в областях, где данные естественным образом разрежены, например, в графовых вычислениях или при обработке больших наборов данных с множеством пропусков.
@z140140
Ай бұрын
1. avx2 был оптмизирован под реализацию на двух отдельных 128-битных EU, поэтому в нём такая ебанутая логика 2. в avx512 вроде есть универсальный шафл, его недостаточно?
@pchelnick
13 күн бұрын
Ida Pro - дизассемблер. Видимо путаете с SoftIce, который являлся системным debugger-ом
@MauwTong
Ай бұрын
The best video
@101picofarad
Ай бұрын
Если ИИ помог генерализовать математику - значит математик был не очень сильным - кто-то генерализовал до него и дал почитать нейросети ;)
@crash1504
Ай бұрын
Ничо не понял, но очень интересно! Выпуск кайф
@alexji4654
Ай бұрын
Помню, когда телекоммуникационный доступ появился (примус), мой товарищ - он был старше на 3 года, посетовал, что терминалы развращают, мол, когда на перфокартах работали, программы вылизывали до последнего символа. Хотя на отдел нам давали 45 мин машинного времени...
@michealmltefive5510
Ай бұрын
Я только Basic на MSX застал в 8х г. Ассемблер до сих пор не освоил.
@evgeniykorniloff9974
Ай бұрын
arm архитектуру и оперативную память на тот же кристалл. И никаких конвейеров или кешей. Микропрограммы тоже в оперативку. Скорость +20х и немного отставание из за конвейеров. В целом - чуть лучше интела и дешевле и частоты тактовой хватит. А для PC программ - эмулятор.
@user-np9pn9nm2q
Ай бұрын
"Учи ассемблер" - а типа вариант был вместо ручного заполнентя регистров через переключатели код на бейсике подкинуть? 🤣
@101picofarad
Ай бұрын
Не эффективных математических алгоритмов не бывает - они все зависят от исполняющего это калькулятора. Т.е. всегда можно подобрать такую архитектуру, где "не эффективный" алгоритм будет быстрее чем другой.
@user-cb3mw7rd8b
Ай бұрын
кто в курсе? что за код на интенсиках,? что за интенсики?
@ultimate_engineer
Ай бұрын
Речь про интринсики (intrinsic). Вот здесь неплохо объясняют: ru.stackoverflow.com/questions/621215/Что-такое-интринсики-intrinsics/621239#621239
@Kantor2209
Ай бұрын
PDP 11, сиречь Электроника 60. Писал в кодах, прикольно. Такие фокусы можно было творить. А что, полный доступ, делай что хошь.
@VRchitecture
Ай бұрын
Я понимаю, что это не намеренное, но из-за постоянных усмешек складывается впечатление, будто человека пригласили, чтобы над ним поугарать. Такое себе
@iamdozerq
Ай бұрын
Он рассказывает жесть, она звучит как настоящий анекдот, она вызывает сильный шок и удивление. В другой ситуации они бы плакали от того что он говорит, а тут снимают состояние смехом. И явно же не над ним, что за бред.
@101picofarad
Ай бұрын
Векторизация - основной метод ускорения потому, что это фактически перестройка задачи под параллельную архитектуру. Такую задачу легко автоматически раскидать на множество исполнителей.
@MaruiInfantry
Ай бұрын
Уже нет. Щас всё на GPU считают уже лет 15+. CUDA вышла в 2007 году.
@101picofarad
Ай бұрын
@@MaruiInfantry а на гпу не используется векторизация???
@VRchitecture
Ай бұрын
@@101picofarad О чём вы? Всем же известно, что если исполнять код на GPU, предварительно сдобрив CUDA, то получим топ перформанс. Оптимизаций не требуется от слова совсем, главное - верить в технологию - и она не подведёт👌🏻
@101picofarad
Ай бұрын
@@VRchitecture матлаб мне сказал что мой кривой код на амд 7840hs выполняется быстрее чем на куде 3070 ;) (наверное матлаб не правильно верит)
@VRchitecture
Ай бұрын
@@101picofaradвсё зависит от задачи. Вполне реальная ситуация - CPU обсчитывает данные медленнее, но это компенсируется более быстрым их считыванием из памяти и записью результата обратно. В любом случае, NVIDIA + CUDA круче всех по определению (ну зачем маркетологам врать?)
@user-rd2rw1ip4f
Ай бұрын
ведущим лучше молчать или кивать
@ultimate_engineer
Ай бұрын
Предвосхищаем следующие комменты: "Ведущие воды в рот набрали, нечего сказать?" ))
Пікірлер: 59