На удивление мало жизни происходит по запросу 'NVidia CUDA' в поиске по блогам и новостям. Что у Яндекса, что у Google. Мне это сильно удивительно - штука многообещающая, первая версия SDK датирована ноябрем (появилась примерно 1-го декабря), публичный SDK появился практически месяц назад, а большинство упоминаний в духе "вот вышло", в крайнем случае "читал доку". Таких текстов - навалом, маркетинг NVidia работает. Но скучно.
Помимо форумов NVidia, где заводится по 5-6 новых топиков в день, интересных публикаций немного.
Для начала: Beyond3D опубликовал большой текст про CUDA. Более подробный, чем все что я видел до сих пор (ну, кроме собственно документации).
Экспериментально выяснилось, что содержимое shared memory не сохраняется между запусками кода на G80. Всякий раз оно инициализировано, причем значения разные, то 10 (float), то 125.
Плакала идея синхронизации между мультипроцессорами путем завершения kernel. Нет, синхронизироваться можно, конечно, но если хочется сохранить результат, то надо писать в глобальную память.
Все предыдущие
и более ранние мои упражнения были сделаны в качестве «подхода к снаряду», нужна
была baseline для более интересной задачи: вычислений общего назначения на видеокарте.
Эта тема в последние год-полтора (а особенно, в последние полгода) очень сильно нагрелась.
В то же время, в варианте от NVidia hardware и софт общедоступны, покупаешь видеокарту
и развлекаешься.
Приборы и материалы: NVidia CUDA и прочие
Настоящий общедоступный сдвиг произошел меньше месяца назад: 6 февраля 2006 г. вышла
вторая версия NVidia CUDA Toolkit, она же первая публичная (и первая более-менее работающая), она же
версия 0.8.
Эта версия доступна всем желающим без
подписания NDA, следовательно результаты тестов можно открыто публиковать.
Тема исследования, как обычно, умножение матриц. Задача очень простая алгоритмически, но
со своими особенностями. В силу простоты задачи, изучать особенности одно удовольствие.
Рассматривались три доступных умножителя матриц:
SGEMM в составе библиотеки CUBLAS.
Тестовый пример от NVidia, который очень подробно разобран в документации.
Провел выходные за переразбивкой дисков и переустановкой виндов.
Заодно попробовал и Висту.
За:
есть драйвера под мой старый принтер Canon S9000 и 64-битную ОС (под XP x64 их нет, а 64 бита для меня обязательны, памяти 8 гигов). Собственно, ради упрощения печати (а сейчас я печатаю из VMWare) все и было затеяно.
Размер иконок на десктопе меняется через Ctrl-колесо. Прикольно и можно подобрать хороший размер.
Против очень очень много, хотя со временем исправят:
Драйвера под мой RAID (Areca 1210) имеются (от Win2003), но они неподписаны. Загрузиться можно только выбрав запрет проверки подписи драйверов. А это - одна из опций загрузчика, другие: Safe mode и так далее. В результате, сделав конструкцию незагружаемой (путем установки nTune в моем случае) нельзя откатиться назад.
Новые системные шрифты не нравятся. Т.е. без ClearType они смотрятся совсем плохо, а с ClearType плохо смотрятся другие шрифты. Когнитивный диссонанс и болят глаза.
Все нововведения с юзеринтерфейсом - не понравились. Мигает, переливается, а смысла никакого не видно. 'Use windows classic folders' и, соответственно, Windows classic theme.
Задолбали!!! предупреждения о том, что какая-то программа очень хочет запуститься. В нормальной жизни оно, скорее всего, приемлемо, а вот при заливке софтом - ужас просто.
Задолбала необходимость на каждый чих делать Run As administrator. Ну ладно в Windows/system32 не пускать, это я понимаю, но в юзерские (мои личные!) файлы ?
EFI boot - это чудовищно. Раньше это место правилось тестовым редактором, а сейчас - bcdedit. Подозреваю, что ставить XP после Висты тоже будет мучительно.
dir /s WIndows
43678 файлов в 29806 каталогах, общий объем 9.6Gb
Чего они туда понапихали ? Для сравнения, в свежеустановленной XP - 7109 файлов и 883 мегабайта.
Пошел сносить обратно. HDTV playback мне пока без надобности, а попечатаю по старинке, из VMWare player (+XP 32 bit).
На мой вкус, у младшего рисунок на не слишком контрастных объектах не хуже,
а края картинки на на бесконечности и f/4 даже и изрядно получше.
Надо изучать что будет с источниками света в кадре, если все хорошо, то менять,
светосилы f/2.8 ценой лишнего килограмма веса мне не надо.
На не слишком далекие объекты (3-4 метра) точность наводки автофокуса на моей камере близкая и вполне хорошая.
Да, стабилизатор на взгляд примерно одинаковый: на 200 мм и 1/30 часть кадров имеет очень хорошую резкость, а часть "приемлемую" т.е. на A5 можно печатать если нет выбора.
Картинок не будет, верьте на слово.
Update Оказывается, по мнению фотозоны, младшенький "...may well be the very best tele zoom on the market today - it is certainly the best Canon zoom lens tested locally to date". Инструментальные тесты - не главное, но спорить не буду, мне новый 70-200 тоже очень понравился.
Update Провел операцию по замене f/2.8 IS на f/4 IS. Получается примерно бесплатно, но у нового гарантия на два года.
Яндекс (в лице Яндекс.Ленты) профукивал пароли пользователей ЖЖ. С целью экономии трафика, вестимо.
Количество разума в мире постоянно, а население растет.
Update 1:
Судя по всему, через Яндекс-ленты была доступна часть подзамочных записей
В настоящий момент импорт не работает (error 404), а значит это не свежевнесенная бага,
а бывшая там давно
Если я правильно понимаю, чинить можно только путем размножения лент. Т.е. сделав "честный" агрегатор, который авторизованые RSS-ы будет хранить персонально для юзера.
Использованная в предыдущем тестировании
библиотека численных методов Intel Math Kernel Library
очевидно не является оптимизированной под процессоры AMD. Следовательно, нужно изучать альтернативы.
Альтернатив на сегодня видно три: это библиотека AMD Core Math Library
от производителя процессора и две OpenSource библиотеки:
Goto BLAS и
ATLAS (Automatically Tuned Linear Algebra Software). Их и изучим.
Все бенчмарки были совершенно одинаковыми: заполнялись исходные матрицы (значениями от 0.0 до 1.0),
затем вызывалась функция sgemm (для single precision) или dgemm (double), время выполнения которой и измерялось.
Кроме Dual Opteron 275, в руки попал еще сервер Dual Xeon 5140, показалось полезным
сравнить две архитектуры.
Как выяснили эксперты, студент варил в кастрюльке триперекись ацетона крайне взрывоопасное вещество на основе селитры.
Понятно, почему у него ничего не вышло. Он бы еще уху на основе мяса варил.
Кроме того, он совершил еще одно ужасное преступление
Кроме того, в кастрюльку были заведены два оголенных провода.
Вот ведь мерзавец! А если бы четыре провода завел? Разровняло бы ДАС по камушку!
И это еще хорошее издание. А ведь другую журналистскую продукцию мы хаваем и хаваем и хаваем. Про полоний. Про ураний. Про компьютеры. Впрочем, про компьютеры не хаваем.