Индуктивные функции на Си: подсчёт, сумма, произведение

  Рет қаралды 25,842

Тимофей Хирьянов

Тимофей Хирьянов

Күн бұрын

Пікірлер: 12
@ГеннадийСамойлов-с4ю
@ГеннадийСамойлов-с4ю 4 жыл бұрын
Обычно после уроков меня тянет спать...но не в этом случае. Я влюбился в твой курс
@Forttig
@Forttig 5 жыл бұрын
очень доходчиво
@k777ig
@k777ig 4 жыл бұрын
Спасибо огромное)
@hammerhead83
@hammerhead83 5 жыл бұрын
Круто. Спасибо @Тимофей. Вот у меня есть какая задача в тему. Есть массив целых чисел (внушительный, около 80 млрд). Суть задачи заключается в подсчете минимального и максимального значений в массиве и их количества. Задача немного усложнена тем, что крайне желательно делать это примитивными функциями (без библиотек) потому как выполнение будет на GPU-ускорителе. И второе, крайне важное условие. Хотелось бы это сделать за один проход, поскольку частое копирование из ОЗУ ЦПУ в ОЗУ ГПУ и обратно (небольшими порциями по 10 ГБ за раз) будет негативно влиять на производительность. Да и массив изменяется довольно таки часто (7-8 изменений в сек). Есть какие-то идеи: как подсчитать? Есть смысл создать структуру на СИ и в нее записывать значения? Спасибо :)
@recreationreally4382
@recreationreally4382 5 жыл бұрын
Неплохое у кого-то GPU, если 10 Gb - небольшая порция. Вам сортировать не надо. Разбиваете массив данных на число фрагментов равное числу нитей и ищете локальные экстремумы параллельно. На следующем шаге ищете глобальные экстремумы (их два - максимум и минимум) среди локальных. Зачем Вам структуры если все целое? Для индексации 80 млрд элементов потребуются многомерные массивы, например, [2000][2000][20000] или [2000][4000000]. Ззагружать в графическую память придется порциями, она вроде бы много меньше чем 320 Gb.
@ГеннадийСамойлов-с4ю
@ГеннадийСамойлов-с4ю 4 жыл бұрын
@@recreationreally4382 ты че такой умный?
@zakharatat5464
@zakharatat5464 2 жыл бұрын
а почему эти программы не умеют считать кол-во знаков, сумму, произведение чисел которые состоят более чем из 10 знаков? кто знает?
@programer8
@programer8 4 жыл бұрын
Когда хотим подсчитать количество цифр какого-то числа, то оператор int digit = n % 10; является лишним.
@Кочевник-й3г
@Кочевник-й3г 4 жыл бұрын
Полагаю это сделано нарочно, чтобы количество строк не отличалось между собой. Так визуально легче различать, где именно происходят изменения.
@ДмитрийГуляев-ю4м
@ДмитрийГуляев-ю4м Жыл бұрын
нихуя не понятно но очень интересно
@nicholasspezza9449
@nicholasspezza9449 Жыл бұрын
астралопитек "бучий, пшел отселя
@ЕвгенийВасильев-щ7в
@ЕвгенийВасильев-щ7в 4 жыл бұрын
Сложнааа
Индуктивные функции на Си: any of, all of
8:01
Тимофей Хирьянов
Рет қаралды 22 М.
Индуктивные функции на Си: поиск максимума
23:38
Тимофей Хирьянов
Рет қаралды 26 М.
Оператор if и организация ветвления в Си
15:00
Тимофей Хирьянов
Рет қаралды 44 М.
Копирование массива, реверс циклический сдвиг на Си
20:30
Отображения множеств
14:56
Математика и котики
Рет қаралды 41 М.
Решето Эратосфена на Си
11:41
Тимофей Хирьянов
Рет қаралды 60 М.
Фильтрация потока чисел на Си
7:49
Тимофей Хирьянов
Рет қаралды 36 М.