gladilov.org.ru gladilov.org.ua

905 заметок с тегом

интересное

Всякие интересности.



Позднее Ctrl + ↑

20 лет проекту GNU Parallel

GNU parallel — утилита командной строки, за авторством  Оле Танге (Ole Tange), позволяющая выполнять задачи на одном или нескольких компьютерах параллельно. Ссылка на GIT-репозиторий — https://git.savannah.gnu.org/cgit/parallel.git.

Показать

В прошлом году я нашел старую резервную копию с самой первой версией Parallel. В архиве не было исполняемого сценария, тем не менее остался временный файл от emacs (~parallel). Это обстоятельство позволило установить дату создания первой версии проекта: 6 января 2002г. На тот момент программа представляла из себя ~15 строк кода на Perl и она до сих пор запускается:

#!/usr/bin/perl

$processes=shift;

chomp(@jobs=<>);
for (@jobs) {
    $jobnr++;
    push @makefile,
    (".PHONY : job$jobnr\n",
     "job$jobnr :\n",
     "\t$_\n");
}
unshift @makefile, "all : ",(map { "job$_ " } 1 .. $jobnr),"\n";

open (MAKE, "| make -k -f - -j $processes") || die;
print MAKE @makefile;
close MAKE;

Эта версия Parallel не являлась частью GNU, принятие в проект случилось только в апреле 2011 года.

Похоже Parallel сохраняет актуальность по сей день. Утилита упомянается в 1000 научных статьях и число цитирований растёт из года в год. Статьи охватывают широкий спектр вопросов, начиная с обрезки фруктовых деревьев, заканчивая проверкой программ марсохдов или исследованиям COVID-19.

Больше всего споров за минувшие 20 лет вызвала необходимость уведомления о цитировании. Подробнее можно узнать из описания параметра

--citation

в документации.

Источник — https://www.gnu.org/software/parallel/20th-birthday.html

Прочтённые книги — 03.01.2022

Прочёл/прослушал
    Фантастика, 1986 год

Сборник фантастических произведений издательства «Молодая гвардия» за 1986 год. Очень понравились рассказы Сергея Стефановича Сухинова «Дворник», Натальи Аркадьевны Дарьяловой «Великая и загадочная», Игоря Валентиновича Яковлева «Веланская история», Артёма Ильича Гая «Незавершенный эксперимент», Виталия Ивановича Пищенко «Равные возможности». Ну и отдельно выделю рассказ Владимира Игоревича Малова «Статуи Ленжевена» — читал его в детстве в журнале «Юный техник» в 1984 году, очень интересный.

2022   досуг   интересное   книги   моё чтиво

Вышел набор патчей, ускоряющих сборку ядра Linux на 50-80%

Инго Молнар (Ingo Molnar), известный разработчик ядра Linux и автор планировщика задач CFS (Completely Fair Scheduler), предложил для обсуждения в списке рассылки разработчиков ядра Linux серию патчей, затрагивающих более половины всех файлов в исходных текстах ядра и обеспечивающих увеличение скорости полной пересборки ядра на 50-80% в зависимости от настроек. Реализованная оптимизация примечательна тем, что она сопряжена с добавлением самого крупного в истории разработки ядра набора изменений — для включения разом предложено 2297 патчей, меняющих более 25 тысяч файлов (10 тысяч заголовочных файлов в каталогах include/ и arch/*/include/ и 15 тысяч файлов с исходными текстами).

Показать

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

Среди внесённых изменений: отделение высокоуровнневых заголовочных файлов друг от друга, исключение связывающих заголовочные файлы inline-функций, выделение заголовочных файлов для типов и API, обеспечение обособленной сборки заголовочных файлов (около 80 файлов имели мешающие сборке непрямые зависимости, выставляемые через другие заголовочные файлы), автоматическое добавление зависимостей к файлам .h и .c, пошаговая оптимизация заголовочных файлов, использование режима CONFIG_KALLSYMS_FAST=y, выборочная консолидация Си-файлов в сборочные блоки для снижения числа объектных файлов.

В итоге, проделанная работа позволила на 1-2 порядка сократить размер заголовочных файлов, обрабатываемых на стадии постпроцессинга. Например, до оптимизации использование заголовочного файла linux/gfp.h приводило к добавлению 13543 строк кода и подключения 303 зависимых заголовочных файлов, а после оптимизации размер сократился до 181 строк и 26 зависимых файлов. Или другой пример: при препроцессинге файла kernel/pid.c без патча подключается 94 тысяч строк кода, большая часть которого не используется в pid.c. Разделение заголовочных файлов позволило снизить объем обрабатываемого кода в три раза, сократив число обрабатываемых строк до 36 тысяч.

При полной пересборке ядра командой make -j96 vmlinux на тестовой системе применение патчей показало сокращение времени сборки ветки v5.16-rc7 с 231.34 до 129.97 секунд, а также повысило эффективность использования ядер CPU во время сборки. При инкрементальной сборке эффект от оптимизации ещё более заметен — время повторной пересборки ядра после внесения изменений в заголовочные файлы сократилось в разы (от 112% до 173% в зависимости от изменяемого заголовочного файла). Оптимизации пока доступны только для архитектур ARM64, MIPS, Sparc и x86 (32- и 64-бит).

Источники:
https://www.opennet.ru/opennews/art.shtml?num=56449
https://lwn.net/Articles/880175/rss

2022   Linux   в мире   досуг   интересное   события   софт

Линусу Торвальдсу 52!


Сегодня Линус Торвальдс (Linus Benedict Torvalds), финно-американский программист, создатель ядра Linux, отмечает своё 52-летие. Здоровья, долголетия, счастья и добра.

С ДР, крч.

Прочтённые книги — 26.12.2021

Прочёл/прослушал
    Фантастика, 1985 год

Сборник фантастических произведений издательства «Молодая гвардия» за 1985 год. Понравились рассказы Юрия Кириллова и Виктора Григорьевича Адаменко «Внедрение», Андрея Всеволодовича Дмитрука «Формика», Григория Евгеньевича Темкина «Кораллы Кайобланко», Бориса Антоновича Руденко «Работа по призванию». Ну и отдельно выделю повесть Владимира Ивановича Пирожникова «На пажитях небесных» — читал её в детстве в журнале «Знание-сила» в 1983 году, этакий прообраз современного киберпанка.

2021   досуг   интересное   книги   моё чтиво

Прочтённые книги — 12.12.2021

Прочёл/прослушал
    Фантастика, 1984 год

Сборник фантастических произведений издательства «Молодая гвардия» за 1984 год. Понравились рассказы Владимира Ивановича Щербакова «Тень в круге», Станислава Семеновича Гагарина «Агасфер из созвездия Лебедя», Светланы Владимировны Ягуповой «Берегиня», Александра Николаевича Петрина «Василь Фомич и ЭВМ» и «Похождения робота».

2021   досуг   интересное   книги   моё чтиво

Прочтённые книги — 03.12.2021

Прочёл/прослушал
    Фантастика, 1983 год

Сборник фантастических произведений издательства «Молодая гвардия» за 1983 год. Понравились рассказы Георгия Иосифовича Гуревича «Они же деревянные», Альберта Абрамовича Валентинова «Микки», Александра Федоровича Тебенькова «Шестьдесят Первая Лебедя».

2021   досуг   интересное   книги   моё чтиво

Победа русского флота в Синопском сражении

168 лет назад, (18) 30 ноября 1853 года, произошло Синопское сражение, вошедшее в историю как последняя крупная битва парусных флотов времён Крымской войны 1853-1856 годов.

В начале ноября 1853 года вице-адмирал Павел Нахимов, командовавший русским флотом, узнал, что турецкая эскадра во главе с Османом-паши, направившись к берегам Кавказа, вышла из Босфора и укрылась от шторма в Синопской бухте.

В распоряжении Нахимова было три 84-пушечных линейных корабля, у Осман-паши — 16 кораблей с 510 орудиями под защитой береговых батарей. Нахимов решил заблокировать неприятеля в бухте, а с прибытием подкрепления из Севастополя уничтожить его.

Показать

(18) 30 ноября 1853 года, наконец, подошло подкрепление. Теперь его эскадра состояла из шести линейных кораблей и двух фрегатов. Подойдя на расстояние 300-350 метров от турецких кораблей и бросив якоря, они открыли сокрушительный огонь по противнику. Стрельба русских кораблей отличалась высокой точностью и большим темпом.

Сражение длилось четыре с половиной часа. В его ходе были уничтожены практически все турецкие корабли и береговые батареи. Только одному пароходу, которым командовал английский офицер Слейд, советник турецкого флота, удалось спастись. Эскадра Нахимова не потеряла ни одного судна, потери в личном составе составили 37 убитых и 233 раненых, тогда как турки потеряли свыше 3000 человек, а командующий турецкой эскадрой адмирал Осман-паша был взят в плен.

За победу при Синопе император Николай I наградил Павла Нахимова орденом Святого Георгия 2-й степени, написав в именном рескрипте: «Истреблением турецкой эскадры вы украсили летопись русского флота новою победою, которая навсегда останется памятной в морской истории».

В современной России победа русского флота у мыса Синоп празднуется как День воинской славы России.

Прочтённые книги — 24.11.2021

Прочёл/прослушал
    Фантастика, 1982 год

Сборник фантастических произведений издательства «Молодая гвардия» за 1982 год. Понравились рассказы Игоря Марковича Росоховатского «Мысль», Олега Сергеевича Корабельникова «Дом», Сергея Анатольевича Смирнова «Лесник».

2021   досуг   интересное   книги   моё чтиво
Ранее Ctrl + ↓
Наверх