Опрос читателей. Наиболее интересные для вас темы

В очередной раз задумался о содержании этого блога.

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

По этому вопросу я хотел бы посоветоваться с вами, ведь вам это читать 🙂 А заодно было бы интересно узнать, какие разделы вам наиболее интересны. Поэтому большая просьба отметиться в следующем голосовании.

Наиболее интересные для вас темы

Показать результаты

Загрузка ...

UpdateNotifier. Новый плагин для OutWiker

UpdateNotifier. Новый плагин для OutWiker

Давние пользователи OutWiker могли заметить, что в последнее время новые версии программы выходят не так часто, как это было, например, еще год назад. На самом деле это только так кажется, поскольку теперь новые возможности добавляются не непосредственно в саму программу, а с помощью плагинов. Плагины периодически обновляются и появляются новые. Убедиться в том, что работа над OutWiker идет, вы можете по статистике коммитов на github.

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

Этот плагин добавляет пункт меню «Справка -> Проверить обновления…», выбор которого запускает поиск новых версий. Если появилась новая версия какого-то плагина или OutWiker’а, то появится такое вот окно с уведомлением:

Читать далее…

Летняя суперкомпьютерная академия на факультете ВМК МГУ

logo

В прошлом посте я сказал о том, что у меня начинаются занятия в Летней суперкомпьютерной академии на факультете Вычислительной Математики и Кибернетики (ВМК) в МГУ, связанные с параллельными вычислениями. Вчера состоялось закрытие этого мериприятия, дале я расскажу о том, что там было в течение этих двух недель.

Занятия были разделены на две части. На первой неделе нам читали лекции по самым разным темам, касающихся параллельных вычислений, суперкомпьютеров и их применения. Рассказывали про архитектуры суперкомпьютеров, в том числе тех, которые установлены в МГУ. Была общая теория параллельных вычислений, где говорили о том, что можно сделать с алгоритмом для того, чтобы разорвать связи по данным, чтобы какие-то массивы можно было бы обрабатывать параллельно. Много говорили про Top500 — мировой рейтинг суперкомпьютеров, тем более, что буквально за несколько дней до начала академии появилась новая редакция этого рейтинга, где на первое место выскочил китайский суперкомпьютер Tianhe-2 с тремя миллионами ядер процессора (если быть точнее, то 3 120 000 ядер).

Несколько докладов было на тему того, когда же, наконец, будет достигнута производительность в один экзаплоп/с (1018 операций с плавающей точкой в секунду), а также о том, какие для этого проблемы надо решать (особенно это касается эноргопотребления). Tianhe-2 на сегодняшний день имеет производительность 33862.7 терафлоп/с, и при этом уже потребляет почти 18 МВт мощности, что равносильно потреблению какого-нибудь села или нескольких высотных жилых домов. Что экзафлоп будет достигнут в ближайшие годы никто не сомневается, споры идут только по поводу того, будет ли достигнута эта величины до 2020 года (называют года 2018-2019) или все-таки после (2021 — 2022 год).

Читать далее…

Книги про параллельные вычисления с использованием MPI

Книги про параллельные вычисления с использованием MPI

Начиная с этого понедельника в течение двух недель у меня начинаются занятия в Летней суперкомпьютерной академии МГУ, куда меня послали на работе. В качестве направления (на сайте это называется треком), по которому я буду учиться, выбрал параллельное программирование с использованием MPI (Message Passing Interface) и OpenMP. Судя по всему, изначально подразумевалось, что те, кто будет проходить обучение в этой академии, уже должны уметь пользоваться этими библиотеками, а на лекциях и практике будут рассказывать более углубленные вещи. По крайней мере в прошлые годы для поступления в эту академию нужно было проходить тестирование, которое в этом году отменили.

До сих пор об MPI и OpenMP я имел представление только на уровне «да, есть такие библиотеки», хотя некоторые исходники с использованием OpenMP еще видел издалека и представлял, что распараллеливание происходит с помощью команд #pragma… В общем, чтобы не совсем опозориться, где-то месяц назад начал судорожно читать книги про OpenMP и особенно MPI. OpenMP — это все-таки более простая вещь, если есть опыт программирования обычных многопоточных приложений, а вот MPI мозг выворачивает наизнанку. Если с использованием OpenMP программу можно постепенно из последовательной сделать параллельной, то при использовании MPI программу нужно изначально писать с расчетом на эту библиотеку.

Так что основной упор за последний месяц сделал именно на MPI, который не особо полезен на обычных настольных компьютерах, но без него не обойтись при расчетах на суперкомпьютерах с распределенной памятью, когда память не одна на все процессоры, а каждый процессор может обращаться к своему блоку памяти. Поэтому в MPI, в отличие от OpenMP, распараллеливание происходит не по потокам (знаю, что их правильнее называть нитями, но я уже слишком привык к такому неправильному переводу слова «thread», распространенному в нашей литературе), а по процессам. Программа, написанная с использованием MPI — это по сути несколько одновременно запущенных программ (или одинаковых, или разных), обменивающихся между собой данными, и задача программиста описать, какой процесс, что делает.

Возвращаясь к книжкам. После того, как стало ясно, что мне предстоит, я скачал (за одно это слово пока еще не расстреливают? А то я не успеваю следить за потоком незамутненного сознания наших депутатов) несколько книг:

  • А. С. Антонов — Параллельное программирование с использованием технологии MPI.
  • Г. И. Шпаковский, Н. В. Серикова — Программирование для многопроцессорных систем в стандарте MPI.
  • В. Д. Корнеев — Параллельное программирование в MPI.

Читать далее…

Shortcuter. Класс для расстановки клавиатурных сокращений в меню wxPython

Выложил класс для автоматической расстановки клавиатурных сокращений (подчеркнутых букв) в меню с использованием wxPython. Подробнее…

Галерея компьютерной эволюции. Очень ностальгический пост

Галерея компьютерной эволюции. Очень ностальгический пост

Недавно благодаря [info]tehi4ka удалось побывать в галерее компьютерной эволюции, о которой до этого даже не слышал. Скорее всего я бы про нее не знал и дальше, если бы не стечение двух обстоятельств. Обстоятельства заключаются в том, что в этом году день «ночи в музее» выпал на субботу, благодаря чему галерея работала в эту самую субботу, хотя обычно она работает только по будням и только до 18 часов.

Галерея расположена в небольшом зале, где в витринах разложено компьютерное (и не только) железо, начиная с советских времен и до современных гаджетов и серверов.

Зал галереи

Читать далее…

Новости OutWiker

Разработка OutWiker не прекращается ни на минуту. На данный момент накопились три новости, касающиеся этой программы.

Читать далее…

Git и решение проблем с именами файлов в кодировке Unicode

Git и решение проблем с именами файлов в кодировке Unicode

Когда-то давно, когда я только начинал делать OutWiker, исходники этой программы я выкладывал на github. Но оказалось, что у git в то время были большие проблемы с именами файлов, содержащих не латинские буквы (подробнее об этом я в свое время писал в посте Git, Bazaar и русские имена файлов), из-за чего пришлось перейти на Bazaar.

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

На днях решил посмотреть, как обстоят дела с этой проблемой сейчас, и оказалось, что прошло уже больше года, как проблему побороли, начиная версии git 1.7.10. На этот счет на сайте msysgit (реализации git под Windows) есть даже статья на эту тему. В ней написано, что нужно сделать, чтобы git мог нормально работать с файлами в кодировке Unicode, и как перекодировать уже существующий репозиторий в юникодный формат представления файлов.

Читать далее…

Statistics. Новый плагин для OutWiker

Statistics. Новый плагин для OutWiker

Сделал новый плагин Statistics для программы OutWiker. Идея написать этот плагин возникла не на пустом месте. Так как сам я использую OutWiker в том числе для написания постов в блог и статей на сайт, то мне стало любопытно, какая же статья получилась самой большой, какие теги я использую чаще всего, а какие можно выкинуть из-за того, что ими помечены только одна заметка. После этого я сел за написание этого плагина.

Как уже понятно из названия, этот плагин должен показывать какую-то статистику. Но что это за статистика?

Плагин добавляет два пункта меню: Инструменты -> Статистика страницы и Инструменты -> Статистика дерева. При выборе пункта меню «Статистика страницы» будет показана следующая информация по текущей странице:

  • Количество слов.
  • Количество строк (абзацев).
  • Количество символов с учетом и без учета пробелов, табуляций и переноса строк.
  • Количество прикрепленных файлов и их размер.

Выглядит это следующим образом:

Читать далее…