четверг, 10 февраля 2011 г.

Немного "бенчмарков"

Как-то недавно я задался желанием купить свежий быстрый процессор от Intel и в преддверии этого искал и читал кучу бенчмарков. Появилось и желание проделать свой собственный, но так как мы, линуксоиды, не владеем кучей стандартных бенчмарков я вспомнил, как быстро компилилось 2.6.9 на одном из серверов, когда хотелось проверить стабильность системы. Так что я решил взять одну и ту же версию ядра и собрать ее с make allmodconfig на самых разных системах.
И вот что получилось:

https://spreadsheets.google.com/ccc?key=0AprkJoujHYK8dERmZF9aLTI4SFhTWjBWd2J5LWlTVEE&hl=en#gid=0

Выводов пока немного. :)
1. Благодаря наличию в i7 2600 технологии HyperThreading мне удалось протестировать процессор и с ней и без нее. Разница в убывании времени компиляции довольно значительна - около 20%, что, безусловно, совсем не мало, так что, пожалуй, если вы часто собираете ядро, вам Hyperthreading пригодится.
2. Чем "боянистее" процессор, тем он медленнее. Это хорошо заметно по убыванию времени компиляции по сравнению с временем выхода процессоров в свет. Вплоть до 20 раз между 2003 и 2011 годом :). Также можно найти тест одного из товарищей на мобильном i7 720QM, который даже на меньших частотах обгоняет старенький XP 2200+ не в ожидаемые 4-8 раз (по числу ядер и потоков), а в целых 10.
3. Частота процессора и шин может влиять на время компиляции значительно. Это стало ясно после разгона XP2200+ с 1800 до 2025 МГц по шине (с 133 до 150 Мгц), а именно на 12%, отчего время компиляции снизилось на целых полчаса (~16%). Частота памяти же тут ничем не влияла, хотя и была попытка переключать DDR266 в DDR400, благо такая возможность была в чипсете nForce2). Но, несмотря на это, разогнанный до 4.2 ГГц Core i7 не дал лучших результатов, возможно, пропускной способности одноканальной памяти не хватило.
4. В разных ядрах/компиляторах результаты разные. Так получилось, что тест на T7250 проводился сначала в Funtoo (64-битный), а потом с Live CD Ubuntu 10.04 (32 бита), просто из интереса, дает ли прирост 64-битная архитектура при компиляции ядер. Так как результат оказался в 5 минут в пользу 32-битной системы было заподозрено неладное - и 64-битный LiveCD Ubuntu 10.04 тоже оказался быстрее на те же 5 минут.
5. Не всегда больше ядер - быстрее сборка. :) Opteron 8220 при вдвое меньшем числе ядер серьезно обставил 4 Xeon E7340 (хотя, ну может быть, дело в RT-ядре на последнем). Влияет "качество" ядер и частоты.

Немного справки:
Ядро было 2.6.36.3.
Компилировалось тестируемой архитектурой под нее же.
Конфигурация ядра получалась командой make allmodconfig
Памяти было достаточно чтобы пренебречь дисковыми тормозами.
Каждый тест проводился после чистой распаковки ядерного тарболла.
Учитывалось только время компиляции.

Если кому-то захотелось тоже прогнать компиляцию и поделиться результатом, скрипт примерно такой:
#!/bin/bash

KERNEL_TAR=kernel.tar.gz
KERNEL_URL=http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.36.3.tar.bz2
KERNEL_DIR="linux-2.6.36.3"

CPU_CNT=`grep -c processor /proc/cpuinfo`
# Here you can change number of jobs
JOBS=$CPU_CNT 
#JOBS=$(( $CPU_CNT * 2 )) 
echo "Running test usung $CPU_CNT processors and $JOBS jobs"

if [ ! -e "$KERNEL_TAR" ] ; then
    wget "$KERNEL_URL" -O"$KERNEL_TAR"
fi

if [ -e "$KERNEL_DIR" ] ; then
    rm -rf "$KERNEL_DIR"
fi

tar xf "$KERNEL_TAR" && cd $KERNEL_DIR && 
make allmodconfig &&
time (make -j "$JOBS" > ../build.log 2>&1) 
if [ $? -eq 0 ] ; then  
 cd .. &&
 rm -rf "$KERNEL_DIR" 
 echo Include this data to report too: 
 gcc --version
 uname -a
 grep "model name" /proc/cpuinfo | head -1
 echo $CPU_CNT threads
else  
 cd ..
 echo build failed. You can look into build.log to find cause.
fi


Требуется наличие подключения к интернету, около 4 ГБ свободного места на диске, make, компилятор и другие программы для сборки ядра.

И если решите запускать через sh "xxxx.sh", убедитесь, что ваш /bin/sh - bash, иначе результаты time будут отличаться от тех, которые публикую я.

суббота, 25 декабря 2010 г.

StumbleUpon

Пользуюсь этим сервисом уже месяца три и очень доволен. По-моему, он достаточно безвреден и хорош.

А суть вот в чем. Бывает скучно, рядом есть компьютер с браузером, Интернет. И даже почитать нечего. И было бы это проблемой, если бы не SU. Как оказалось, этот непонятный сервис занимается тем, что собирает ссылки, которые предлагают пользователи. А потом случайным образом их пользователям по запросу показывает. Кому прямо с себя самого, кому - через плагин к браузеру. По нажатию кнопочки Stumble, конечно. И так как пользователь настраивает тематику ссылок самостоятельно и может проголосовать, нравится ему или нет, то, по-идее, ссылки в большинстве будут именно те, что ему понравятся.

Так оно и происходит. Сервис подсовывает просто море очень классного материала, и когда потом вдруг хочется его забукмаркить в Delicious, оказывается что все это уже видели, и только ты отстал от жизни. Вот так.


И да, никто меня не заставлял это писать. Просто вставляет...

вторник, 21 декабря 2010 г.

Про одаренных детей

Часто в душе, под мощными струями воды приходят странные озарения. Вот так и сейчас вдруг выстрелило.

Ну вы знаете, есть такое понятие в некоторых местах как "одаренные дети". Они в чем-то особенные (ну может у них оценки в предметах лучше, или там они чем-то интересуются) и им вдруг дают особенные привелегии заниматься чем-то таким, чем никто из большинства сверстников не занимается. Это круто и полезно. Сам таким был и знаю где-то сотню еще таких, среди которых я в этом особенном месте для особенных детей вращался. И потом с особенными привелегиями оказался в обычном месте, где внезапно меня уровняли со всеми. Это был удар. Это был университет. Тогда оказалось, что я сам по себе вовсе не особенный, и нужно делать не только то что нравится делать. А то что делают все нормальные люди. Потом университет внезапно кончилсz и в обычной обыденной жизни все было так же как в университете. Правда, будучи ИТ-специалистом не перестаешь чувствовать себя несколько необычным, особенным, выделяющимся, уже потому что ты ИТ-специалист, а таких все-таки чуть меньше чем вообще людей.
Тут-то и приходит разочарование. Возможно в деревне с 1000 жителей ты будешь единственным таким и получать какие-то особенные привелегии. Но вы же понимаете, там будет нечего делать, надоест. А в мире таких куда больше миллиона. Бах. Опять удар. То что с детства вбивалось родителями, а может учителями, ему в голову, его особенность (ну да, он особенный, но ведь только для них), оборачивается теперь проблемами. Кризисом самооценки, проблемами в отношениях. Социопатией. Депрессиями. Особенность особенного никто не замечает. Девушки в ноги не падают, а грузовики с золотыми слитками никто не дает.
Пожалуй было бы лучше, если бы с детства нас учили тому, что нужно что-то делать и чего-то добиваться, целеустремленно и упорно, а не ждать признания того что мы какие-то необычные сами по себе. И что о нас никто не позаботится просто так. Ни государство, ни дядя милиционер, и даже не начальство. Для всех ты просто еще один из многих, пока лежишь и ничего не делаешь.

суббота, 27 ноября 2010 г.

Про социальные сети

Задумавшись после фразы "мой жуйко-твиттер" в почте, посмотрел на juick.com. Посмотрел что там пишут. Сравнил с твиттером, фейсбуком, жж, блогспотом, ли.ру-шечкой, и вдруг такое странное чувство появилось, что на самом деле для пользователей это бесполезные сервисы. Почему - трудно сказать, но есть стойкое ощущение, что это и обществу на самом деле не нужно. Как и такие вот блоги как мой. Общение в онлайне весьма негативно сказывается на психическом состоянии индивидов, приводя их к депрессии, отрыву от реальности (по моему мнению, но если вдруг найдутся психиатры, которые согласны, буду рад), так что можно просто-напросто вычеркнуть этот аргумент в их пользу. Вариант "размещение полезной информации" как-то тоже плохо работает, потому что многие из тех кто не знает эту информацию не ищут ее с помощью поисковиков, а те кто ищут - уже и так ее, как правило, знают. Да и мало авторитета у какого-то там персонального блога кого-то там. Если только его целенаправленно не читают, что бывает довольно-таки редко. Так что тоже не аргумент. Что остается? Ну "это способ потратить время", разве что. Получение удовольствия? Может быть. Но это уж точно не время, проведенное с пользой для себя, извините. Можно с тем же успехом просто спать, и это, пожалуй, намного полезнее.

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

среда, 20 октября 2010 г.

вторник, 19 октября 2010 г.

Размышления про DNS

Думалось мне, да и был уже такой совет когда-то на Хабрахабре - всем так или иначе надо предоставлять пользователям какие-то сервисы - ftp, www, какой-то форум, jabber, почту, вебморду для почты, галерею, базу знаний и прочее. Часто на первых этапах, особенно если компиния маленькая и серверов мало (либо если проект не предполагает изначально какой-то особой нагрузки) - их подселяют к уже имеющимся сервисам на каком-то сервере. Еще чаще бывает, что у сервера есть какое-то свое собственное имя, не соотносящееся с именем сервисов.
Так вот. Неплохой идеей является установка дополнительных CNAME или A-записей для каждого отдельного сервера.
Профит очевиден - перенос сервиса становится незаметным для пользователей - мы просто переносим сервис и меняем запись в DNS. Никаких "ты туда не ходи, ты сюда ходи" для пользователей. Да и система получается самодокументирующейся - сразу становится ясно, где тот или иной сервис развернут. Становится возможным соседство веб-приложений на одном веб-сервере с использованием разных vhost. В общем, лепота. Почему до сих пор не все пользуются?

понедельник, 18 октября 2010 г.

Словесный понос

Недельки три назад я разразился удивлением по поводу Write Attack - маленькой программки для тех, кто хочет просто написать некоторую статью, но у него "творческий кризис". Суть ее в общем-то проста. Это обычный текстовый редактор, который, во-первых, имеет лимит времени, во-вторых - цель по количеству слов. Во время "работы" над текстом функции сохранения, копирования, вставки - отключаются. Если вы не успели набрать заметку вовремя, она просто будет уничтожена.

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

Так что я написал свою версию, не обремененную вышеперечисленными недостатками. Она работает везде. Я пробовал ее и там и сям, не нашелся только Mac, но если вдруг... я уверен, что работает и там. Правда, вам придется поставить JRE, чтобы ее запустить. Она простая, в ней нет ничего лишнего. Поставить цели, сделать Start, и писать. Успели - радуйтесь, не успели - ну, напишите еще разик :)

git repository

download *nix
download win