Pull to refresh
21
0

Turing complete Researcher/Hacker

Send message

Дарим книгу «Гарри Поттер и методы рационального мышления» олимпиадникам

Reading time5 min
Views42K


16 июля мы запустили некоммерческий краудфандинг на печать «Гарри Поттера и методов рационального мышления». Он собрал больше 8 миллионов рублей, став вторым в топе российских краудфандинг-проектов по объёму сборов. После печати тиража мы подарим трёхтомники ГПиМРМ школьникам и студентам бакалавриата/специалитета, побеждавшим в олимпиадах.

О чём это вообще?


Книга популяризует идеи критического мышления и эффективного альтруизма — и мы решили, что стоит распространить её среди талантливых людей, которые благодаря ГПиМРМ смогут принести наибольшую пользу миру.

Подробности — под катом.
Читать дальше →
Total votes 61: ↑58 and ↓3+55
Comments184

Эффективные методы сжатия данных при тренировке нейросетей. Лекция в Яндексе

Reading time33 min
Views13K
Не так давно в Яндекс приезжал Геннадий Пехименко — профессор Университета Торонто и PhD Университета Карнеги-Меллон. Он прочитал лекцию об алгоритмах кодирования, которые позволяют обходить проблему ограничения памяти GPU при обучении глубоких нейронных сетей.


— Я вхожу в несколько групп Университета Торонто. Одна из них — Computer Systems and Networking Group. Есть еще моя собственная группа — EcoSystem Group. Как видно из названий групп, я не специалист непосредственно в машинном обучении. Но нейронные сети сейчас достаточно популярны, и людям, которые занимаются компьютерной архитектурой и сетями, компьютерными системами, приходится сталкиваться с этими приложениями на постоянной основе. Поэтому последние полтора-два года этой темой я тоже плотно занимаюсь.
Total votes 41: ↑41 and ↓0+41
Comments7

Как становятся профессионалами в Университете ИТМО: Олимпиада «Я — профессионал», трек «Фотоника»

Reading time7 min
Views3.2K
Сегодняшний материал завершает наш цикл рассказов о направлениях, которые курирует Университет ИТМО на олимпиаде «Я — профессионал». Мы уже писали о треках «Информационная и кибербезопасность» и «Компьютерные науки». Сегодня речь пойдет о фотонике: расскажем, ради чего стоит участвовать в олимпиаде и поступать в Университет ИТМО, на примере историй наших аспирантов и молодых ученых.

Поговорим о том, как построить блестящую научную карьеру и стать настоящим профессионалом, и почему в Университете ИТМО фотоника — это не только наука, но и искусство. А также о том, почему участие в олимпиаде «Я — профессионал» помогает «убить двух зайцев»: получить возможность учиться в престижном вузе и работать в одной из лучших компаний отрасли (и это не считая денежного приза).

Total votes 10: ↑9 and ↓1+8
Comments1

Antimony — САПР из параллельного мира

Reading time3 min
Views21K
Среди трёхмерных САПР наиболее известны программы, реализующие два основных подхода к проектированию: прямое моделирование и параметрическое.

Кроме того, существуют процедурные САПР, которые позволяют моделировать посредством программирования. Такой подход снискал себе признание среди любителей программирования и проектирования устройств с открытыми кодом и конструкцией. Например, хорошо известен OpenSCAD, который здесь не раз упоминался.

Предлагаю посмотреть на еще одну необычную САПР под названием Antimony.

image
Рис. 1. Antimony — САПР из параллельного мира
Total votes 56: ↑54 and ↓2+52
Comments33

Изучаем сопромат с CalculiX

Reading time12 min
Views19K
Сдал сопромат — можно жениться!

Введение


Метод конечных элементов (МКЭ или FEM, у них за рубежом) прочно вошел в практику инженерных расчетов при проектировании сложных систем. В значительной степени это касается прочностных расчетов механики. Применения этого метода, реализуемого соответствующим программным обеспечением существенно сокращает цикл разработки конечного устройства, позволяя исключить массу экспериментальных проверок, необходимых при использования классических расчетов на основе методов сопромата и строительной механики. На текущий момент разработана масса прикладного ПО, реализующего МКЭ. Во главе угла стоит мощный ANSYS, по бокам от него и в почетном удалении — CAD-системы со встроенным FEM-модулем (SolidWorks, Siemens NX, Creo Parametric, Компас 3D).

CalculiX силен, но труден и непонятен. Исправим это?



Естественно, МКЭ проник и в сферу образования — чтобы использовать его в реальных задачах, нужна подготовка соответствующих специалистов. В столицах, в крупных технических вузах обстановка в этой области более-менее нормальная, да и у нас в регионе тот же ANSYS применяется, например, на кафедре теории упругости ЮФУ. Но по периферии, в узко специализированных и не богатых университетах ситуация плачевна. И всё просто — ANSYS стоит порядка 2 млн. рублей за одно рабочее место, а место требуется не одно. К сожалению не все вузы могут позволить себе выложить 30-40 миллионов на организацию компьютерного класса для обучения применению МКЭ.

Одной из альтернатив может служить применение в учебном процессе свободного ПО. К счастью таковое ПО имеется. Однако, русскоязычных материалов по его использованию практически не существует. Исправляя эту ситуацию, данную статью я собираюсь посвятить в введению в CalculiX — открытый, свободный программный пакет, предназначенный для решения линейных и нелинейных трёхмерных задач механики твёрдого деформируемого тела и механики жидкости и газа с помощью метода конечных элементов.
Читать дальше →
Total votes 28: ↑28 and ↓0+28
Comments55

AliceVision: фотограмметрия из командной строки

Reading time8 min
Views19K
Вам нужно автоматизировать огромное количество фотограмметрических сканов? Тогда у меня для вас хорошие новости.


В видео показана программа для фотограмметрии Meshroom с открытым исходным кодом. Этот проект в разных формах существует уже довольно давно, но недавно разработчики выпустили двоичные файлы, поэтому их можно просто скачать и использовать. В ролике продемонстрировано использование GUI для загрузки изображений, их обработки, изменения параметров и т.д. Рекомендую вам попробовать эту программу в действии.

Но меня интересует полная автоматизация. Если у вас есть сканирующая установка, на которой вы делаете по 100 и больше сканов в день, то необходимо полностью автоматизированное решение для пакетной обработки этих файлов. Данный пост является руководством и/или туториалом по решению этой задачи.
Total votes 24: ↑24 and ↓0+24
Comments3

Михаил Бессмельцев с коллегой разработал новые алгоритмы для векторизации графики

Reading time3 min
Views32K

Слева направо: оригинал, оснащённое поле (frame field) и окончательный результат. На базе зашумлённого растрового изображение в оттенках серого вычисляется оснащённое поле, выровненное по линиям картинки. На острые углы типа X- и T-пересечений накладываются векторы по обоим направлениям. Затем из этого поля извлекается топология чертежа — и производится окончательная генерация векторных кривых

Векторизация изображений — основополагающий компонент рабочего процесса в графическом дизайне, технике и компьютерной анимации. Она преобразует черновые рисунки художников и дизайнеров в гладкие кривые, необходимые для редактирования.

Первые алгоритмы векторизации изображений появились в начале 1990-х годов и
использовались в инструментах для редактирования векторной графики, таких как Adobe Illustrator (Live Trace), CorelDRAW (PowerTRACE) и Inkscape. Несмотря на их широкое внедрение в промышленности, эти алгоритмы до сих пор страдают от серьёзных недостатков и находятся в активной разработке. В нескольких индустриях, где векторизация крайне необходима, включая традиционную анимацию и инженерное проектирование, она часто выполняется вручную. Дизайнеры кропотливо обводят отсканированное изображение с помощью инструментов рисования.
Читать дальше →
Total votes 82: ↑80 and ↓2+78
Comments28

Издержки согласования в коллективах

Reading time4 min
Views8.6K
Это краткое отступление в текущей серии статей о том, как избегать введения сервисов для различных сущностей. Интересный разговор за ужином привёл к мыслям, которые я решил записать.

Закон Амдала


В 1967 году Джин Амдал представил довод против параллельных вычислений. Он утверждал, что рост производительности ограничен, поскольку только часть задачи поддаётся распараллеливанию. Размер остальной «последовательной части» отличается в разных задачах, но она есть всегда. Этот довод стал известен как закон Амдала.

Если построить график «ускорения» выполнения задачи в зависимости от количества выделенных ей параллельных процессоров, вы увидите следующее:


Это асимптотический график для фрагмента, который не поддаётся распараллеливанию («последовательная часть»), поэтому существует верхний предел максимального ускорения
Читать дальше →
Total votes 32: ↑32 and ↓0+32
Comments11

Повышаем производительность кода: сначала думаем о данных

Reading time20 min
Views63K


Занимаясь программированием рендеринга графики, мы живём в мире, в котором обязательны низкоуровневые оптимизации, чтобы добиться GPU-фреймов длиной 30 мс. Для этого мы используем различные методики и разработанные с нуля новые проходы рендеринга с повышенной производительностью (атрибуты геометрии, текстурный кеш, экспорт и так далее), GPR-сжатие, скрывание задержки (latency hiding), ROP…

В сфере повышения производительности CPU в своё время применялись разные трюки, и примечательно то, что сегодня они используются для современных видеокарт ради ускорения вычислений ALU (Низкоуровневая оптимизация для AMD GCN, Быстрый обратный квадратный корень в Quake).


Быстрый обратный квадратный корень в Quake

Но в последнее время, особенно в свете перехода на 64 бита, я заметил рост количества неоптимизированного кода, словно в индустрии стремительно теряются все накопленные ранее знания. Да, старые трюки вроде быстрого обратного квадратного корня на современных процессорах контрпродуктивны. Но программисты не должны забывать о низкоуровневых оптимизациях и надеяться, что компиляторы решат все их проблемы. Не решат.

Эта статья — не исчерпывающее хардкорное руководство по железу. Это всего лишь введение, напоминание, свод базовых принципов написания эффективного кода для CPU. Я хочу «показать, что низкоуровневое мышление сегодня всё ещё полезно», даже если речь пойдёт о процессорах, которые я мог бы добавить.

В статье мы рассмотрим кеширование, векторное программирование, чтение и понимание ассемблерного кода, а также написание кода, удобного для компилятора.
Читать дальше →
Total votes 141: ↑133 and ↓8+125
Comments103

С — не низкоуровневый язык

Reading time11 min
Views79K


Ваш компьютер не является быстрой версией PDP-11


Привет, Хабр!

Меня зовут Антон Довгаль, я С (и не только) разработчик в Badoo.

Мне попалась на глаза статья Дэвида Чизнэлла, исследователя Кембриджского университета, в которой он оспаривает общепринятое суждение о том, что С — язык низкого уровня, и его аргументы мне показались достаточно интересными.

В свете недавно обнаруженных уязвимостей Meltdown и Spectre стоит потратить время на выяснение причин их появления. Обе эти уязвимости эксплуатировали спекулятивное выполнение инструкций процессорами и позволяли атакующему получать результаты по сторонним каналам. Вызвавшие уязвимости особенности процессоров наряду с некоторыми другими были добавлены для того, чтобы программисты на C продолжали верить, что они программируют на языке низкого уровня, хотя это не так уже десятки лет.

Производители процессоров не одиноки в этом. Разработчики компиляторов C/C++ тоже внесли свою лепту.
Читать дальше →
Total votes 206: ↑198 and ↓8+190
Comments296

Мысли Джимми Уэйлса: «Википедия как сосиска...»

Reading time8 min
Views3.8K
image

Цитаты


Представьте мир, в котором каждый человек на планете получает бесплатный доступ к знаниям всего человечества. Это то, чем мы занимаемся.

Я часто советую людям, которые разочарованы в войне правок, подумать о тех, кто живет без чистой питьевой воды, без каких-либо надлежащих средств обучения и подумать о том, как наша работа может когда-нибудь помочь этому человеку. Я полагаю, это стоит появления флеймов.

Википедия как сосиска: тебе может нравиться её вкус, но тебе не обязательно хотеть видеть как она изготавливается.

Когда кто-то пишет 'f**k, f**k, f**k' мы просто исправляем это, смеемся и двигаемся дальше. Но сложными социальными проблемами являются пограничные случаи — люди, которые делают хорошую работу, но также являются занозой в заднице.

Википедия — это, прежде всего, попытка создать и распространить бесплатную энциклопедию с максимально возможным качеством для каждого человека на планете на его родном языке. Спрашивая, приходит ли сообщество до или после этой цели, вы на самом деле задаете неправильный вопрос: вся цель сообщества — именно эта цель.
Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments11

Расчёт волновых процессов в гидравлической линии методом характеристик

Reading time8 min
Views9.6K


Привет, Хабр! В этой статье я расскажу про создание математической модели длинного трубопровода для CAE-программы SimulationX на языке Modelica. Речь пойдёт о расчёте волновых процессов (пульсации давления, гидроудар и т.п.) в гидравлической линии методом характеристик. Несмотря на то, что этот метод довольно старый, в рунете довольно мало информации о его применении для решения прикладных задач.

Под катом я постараюсь объяснить зачем вообще нужно учитывать волновые процессы в трубопроводах, осветить проблемы, с которыми я столкнулся при программировании и в конце приведу сравнение процесса пульсаций давления при работе трёхплунжерного водяного насоса высокого давления на простой длинный трубопровод в модели и на стенде фирмы URACA в Германии.
Читать дальше →
Total votes 27: ↑27 and ↓0+27
Comments16

Information

Rating
Does not participate
Date of birth
Registered
Activity