URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 85379
[ Назад ]

Исходное сообщение
"Проект по реализации системы дедупликации памяти для ядра Linux"

Отправлено opennews , 02-Июл-12 13:52 
Группа исследователей из Нанкинского университета (Китай) представила проект Ultra KSM (http://translate.google.com/translate?hl=en&ie=UTF8&prev=_t&.../) (UKSM), в рамках которого для ядра Linux создан менеджер памяти с поддержкой системы дедуплицирования данных. UKSM является расширенной альтернативной реализацией технологии KSM (Kernel Shared Memory), созданной в рамках проекта KVM и позволяющей исключить дублирование данных в памяти через совместное использование одинаковых блоков в разных виртуальных окружениях. UKSM позволяет  автоматически выявлять дубликаты помещаемых в память данных и физически  сохранять только одну копию, привязывая остальные копии через ссылки, используя  структуры данных аналогичные KSM.  В настоящее время проектом подготовлен (http://translate.googleusercontent.com/translate_c?hl=en&ie=...) набор патчей для ядра 3.4, а также сформированы готовые пакеты для Debian, Ubuntu  и Fedora.  

Наибольшей эффективности UKSM
достигает (http://translate.google.com/translate?sl=auto&tl=en&js=n&pre...) при использовании в сочетании с системами виртуализации, позволяя экономить значительный объём памяти в ситуации запуска множества типовых гостевых окружений, ценой незначительного повышения нагрузки на CPU. В отличие от KSM, UKSM использует более быстрый и эффективный в плане снижения нагрузки на CPU алгоритм сканирования, производящий фоновое выявление и объединение областей памяти. Дубликаты могут объединяться не только для виртуальных машин (UKSM не привязан к KVM), но и для любых пользовательских процессов и системных данных, что является важным отличием от KSM и похожего проекта Xen Dedup, привязанных к системам виртуализации. Все операции UKSM производятся в прозрачном режиме и не заметны для пользователей и компонентов системы.

Особенности UKSM:

-  Сканирование дубликатов для всей системы -  UKSM автоматически сканирует содержимое всей памяти, используемой для маппинга пользовательских процессов, что позволяет обеспечить дудупликацию данных стандартных пользовательских процессов, без модификации кода приложений. Для работы дедупликации требуется только установить специальный патч к ядру Linux, при желании можно осуществить тонкую настройку параметров UKSM через sysfs;

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

-  Эффективный алгоритм выявления избыточных данных. При тестировании системы на базе Intel core 2 Q9300 CPU,  KSM показал пиковую производительность слияния областей памяти на уровне  260 Mб/сек, в тов время как средняя производительность была значительно ниже. На той же системе UKSM, использующий иной метод хэширования,  позволил достигнуть производительности от 477 до 923 Мб/сек для областей с наличием дубликатов и до 2445 Мб/сек для областей не содержащих избыточных данных.

-  Избегание проверки часто меняющихся областей памяти -  в процессе сканирования UKSM учитывает непостоянные области, в которых производится активное изменение данных, и пропускает их чтобы не тратить время зря.


URL: http://www.phoronix.com/scan.php?page=news_item&px=MTEzMTI
Новость: http://www.opennet.me/opennews/art.shtml?num=34240


Содержание

Сообщения в этом обсуждении
"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 13:52 
Кладём в память два дублирующихся блока по 800 Мб. Оставляем свободными 100 Мб. Модифицируем один из блоков. Что будет?

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Геста , 02-Июл-12 13:56 
Одна из страниц раздуплицируется.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено б.б. , 02-Июл-12 14:11 
UKSM дуплицировало, дуплицировало да не раздуплицировало (скороговорки современных логопедов).

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 19:51 
Скорее дедуплицировало, дедуплицировало да не раздедуплицировало (скороговорки современных логопедов).

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено XoRe , 03-Июл-12 12:33 
> Скорее дедуплицировало, дедуплицировало да не раздедуплицировало (скороговорки современных
> логопедов).

Недодедуплицировало.
Нужна антинедодедупликация)


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 13:59 
данные в памяти хранятся с разбиением на страницы, дедупликацируются данные тоже на уровне страниц.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено KblCb , 02-Июл-12 14:00 
Кровь, кишки, свопинг и OOM-киллер. Без дедупликации было бы то же самое, но на 600 Мб раньше.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено qwe , 02-Июл-12 15:59 
>> на 600 Мб раньше

размер страницы обычно 4К если что.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 02-Июл-12 17:17 
4 кб, 2 Мб, или 1 Гб на усмотрение разработчиков ОС.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Chosen One , 02-Июл-12 17:47 
4кб и 4мб под x86, 4кб и 1мб под ARM

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено grondek , 02-Июл-12 14:52 
А насколько долго будут раздедуплицироваться данные мегабайт на 500 например?

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено кевин , 02-Июл-12 16:07 
а сколько твоя память пропускает мегабайт в секунду?

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 17:30 
> А насколько долго будут раздедуплицироваться данные мегабайт на 500 например?

Если почитать новость - на современном железе будет порядка секунды. Секунда в фоне - это много или мало?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено grondek , 02-Июл-12 18:49 
Для офисного приложения - немного. Для игры или фильма - неприятно. Для нагруженных виртуалок - тоже может быт неприятно.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 02-Июл-12 20:40 
> Для офисного приложения - немного. Для игры или фильма - неприятно. Для
> нагруженных виртуалок - тоже может быт неприятно.

та да, игра или фильм - первейшие кандидаты на дедупликацию. особенно фильм.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено XoRe , 03-Июл-12 12:36 
>> Для офисного приложения - немного. Для игры или фильма - неприятно. Для
>> нагруженных виртуалок - тоже может быт неприятно.
> та да, игра или фильм - первейшие кандидаты на дедупликацию. особенно фильм.

А чо, если во всех виртуалках вдруг захотят посмотреть один и тот же фильм - самое оно =)
Насчет игрушек - облачным игровым сервисам, возможно будет интересно, без шуток.
Тому же OnLive... хотя там винда, они в пролете.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено inferrna , 04-Июл-12 15:15 
Блин, не слушайте его. Только не фильмы.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Aceler , 03-Июл-12 11:15 
Нисколько. Ты же новые данные откуда-то берёшь, тебе их в любом случае в память писать, вне зависимости от того, дедуплицированы они или нет.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено qwe , 02-Июл-12 15:58 
>> Кладём в память два дублирующихся блока по 800 Мб. Оставляем свободными 100 Мб. Модифицируем один из блоков. Что будет?

google copy-on-write


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено robux , 02-Июл-12 19:11 
> Кладём в память два дублирующихся блока по 800 Мб. Оставляем свободными 100 Мб. Модифицируем один из блоков. Что будет?

Когда ты будешь слать новые данные ("модифицировать один из блоков"), они уже будут записываться в новое адресное пространство. Если измененные данные в твоем примере превысят 100Мб, они будут записываться в своп, как и положено тому, когда не хватает RAM. По окончании записи изменятся ссылки на новый блок. Никаких дополнительных ресурсных затрат не произойдет. Только:
1) запись в память
2) смена ссылок.

Боишься свопа? Зачем же ты такой большой и лысый пишешь 1600Мб данных в 900Мб RAM?! :)


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 09:06 
Не не не. В основному будут дедублицироваться страницы кода. Они всегда неизменны так как запись в них запрещена.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Black Paladin , 01-Окт-14 01:32 
Будет тоже самое что и без дедупликации при нехватке ОЗУ. Один блок останется в памяти, второй пойдёт в своп отчаянно свопить хардом.
Как я понял задачу 800 + 800 при 1700 мб всего.
Зато вот если блок не модифицировать, тогда даже при такой нехватке памяти, машинка будет чувствовать себя нормально, свопить не будет.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 13:56 
он уйдет в своп?

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 14:07 
зачем ? он просто умрет.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 14:07 
не будет ли просаживания производительности за счет сброса кеша процессора? сканировать то придется память да чексуммы считать, значит, рабочие процессы будут терять свой кэш в процессоре. оно понятно, что эта штука работает в момент простоя (а не конкурентно), когда кэш уже не столь важен, но все таки.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 02-Июл-12 14:41 
Какие ещё нахрен контрольные суммы? Где вы этого дерьма набрались? У памяти страничная адресация, ставим каждой странице флаг "испорчена" и при каждом обращении к странице процессор (железка) вызовет исключение. Дальше смотрим что хотим сделать со страницей, если чтение данных - продолжаем, если запись и страница используется двумя козлами - значит делаем две страницы, снимаем флаг "испорчена" и продолжаем работу.

И какой к чертям собачим кэш? Кэш для программирования на ЯВУ (в т.ч. Си) можно засунуть в задницу Торвальдсу, вопросами кэша теперь озабочен не программист, а компилятор. К тому же при современном количестве очередей и производительности оптимизация кэша крайне затруднена даже для монолитной ОС без приложений на ассемблере.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено grondek , 02-Июл-12 14:47 
> вопросами кэша теперь озабочен не программист, а компилятор

Да ну? Почитайте пару книг по оптимизации программ (от Intel'a например). Не знаю как для java и питонов всяких, но вот на сишечке можно очень хорошо заоптимизировать программу под кеш и логику работы процессора (предсказание условий как минимум). То что конкренты смогут повытеснять из кеша данные моей программы, это возможно. Но хотя бы будет более оптимально работать, если из кеша ее не будут вытеснять.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 02-Июл-12 16:01 
Предсказывать условия? Для 386/486 декодировалась всегда положительная ветвь, для первого и второго пентиумов декодировалась та ветвь, которая с момента включения процессора выполнялась чаще, с третьего пентиума декодируются целиком обе ветки, поэтому эти правила устарели.

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


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено atropos , 02-Июл-12 16:37 
Если бы 8086 сказал. Тогда бы больше людей каламбур поняли.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 17:31 
> Если бы 8086 сказал. Тогда бы больше людей каламбур поняли.

Да ваня эпично ламернулся, как обычно.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено grondek , 02-Июл-12 17:04 
Книги читать полезно. Очень советую, чтобы ерунду не лепить.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 02-Июл-12 17:11 
Уже говорил: без аргументов идёте лесом.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено grondek , 02-Июл-12 18:54 
Ну вот, например.

Избавление от зависимостей по данным в последовательнсх операциях, куча вариантов оптимизаций в циклах, векторизация операций.

В конце концов, оптимизация размера и количества используемых переменных, чтобы они гарантированно кешировались.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено grondek , 02-Июл-12 18:56 
И вообще, есть очень интересные книги например от Intel Press. Уж они-то знают о чем пишут. Там правда сишечка + асм, но вдруг осилите.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 02-Июл-12 20:59 
> В конце концов, оптимизация размера и количества используемых переменных, чтобы они гарантированно
> кешировались.

welcome my son to the virtual machine
where have you've been?
it's alright we're know where you've been
you've been in a cache filling in lines
provided with flags and virtual tags
you'd fill TLB as fast as can be
and you didn't like cache miss
you'll know the pipeline's not pleased
so welcome to the virtual machine


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено grondek , 02-Июл-12 21:11 
Забавно.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 02-Июл-12 21:19 
> Забавно.

а забавно не забавно, сам же понимаешь, где оказываются все "оптимизации под кеш" при запуске в виртуалке. ну то есть где-то в ~70% современных нагрузок.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено grondek , 02-Июл-12 21:53 
Серверные приложения возможно.

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


Да и сами виртуалки пока на железе запускаются.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 02-Июл-12 22:20 
> С другой стороны: игры, мультимедийные приложения <...> запускаются
> на железе.

как уже было сказано, первейшие кандидаты на дедупликацию.

> Да и сами виртуалки пока на железе запускаются.

верно; но нагрузка работает не на железе, а на ВМ, да еще с требованиями всяких миграций, небось

другими словами - там, где стрельнет дедупликация памяти - там нет десктопных нагрузок. и наоборот.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Aceler , 03-Июл-12 11:19 
> Серверные приложения возможно.
> С другой стороны: игры, мультимедийные приложения, всякие оконные менеджеры пока что запускаются
> на железе.
> Да и сами виртуалки пока на железе запускаются.

Вон ubisoft уже и игры на виртуалке в xen пускает: http://www.youtube.com/watch?v=Gtmwnx-k2qg


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено atropos , 02-Июл-12 21:19 
> Уже говорил: без аргументов идёте лесом.

ваня, иди лесом


"Проект по реализации системы дедупликации памяти для..."
Отправлено arisu , 02-Июл-12 23:25 
> Книги читать полезно. Очень советую, чтобы ерунду не лепить.

это же «ванятка-однобитный-float», какие книги?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Анонимъ , 02-Июл-12 17:28 
Оптимизация по кэшу в современных программах - в основном по данным а не по коду. С другой стороны - данные врят-ли будут дедуплицированы. С третьей - Китае ничего хорошего и нового не сделают - надо искать где содрали...

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 17:32 
> С третьей - Китае ничего хорошего и нового не сделают - надо искать где содрали...

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


"(offtopic) made in china"
Отправлено Michael Shigorin , 03-Июл-12 10:09 
> и не стесняются улучшать при передирании

Порой уж лучше бы стеснялись -- в T43 по сравнению с T41 нашёл один багфикс и три регрессии: http://freesource.info/wiki/MichaelShigorin/ThinkPadT43


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 11:46 
> Оптимизация по кэшу в современных программах - в основном по данным а
> не по коду.

Потому что код обычно оптимизирует компилятор. Что не уменьшает значения этой оптимизации.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 15:01 
> У памяти страничная адресация, ставим каждой странице флаг "испорчена" и при каждом
> обращении к странице процессор (железка) вызовет исключение.

ну да, а еще у каждой странички есть флажок - содержание идентично вон той страничке, причем этот флажок заполняется автоматически потусторонними силами

> И какой к чертям собачим кэш? Кэш для программирования на ЯВУ (в т.ч. Си) можно засунуть
> в задницу Торвальдсу, вопросами кэша теперь озабочен не программист, а компилятор.

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

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


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 15:29 
не кормите тролля. На Ваню даже внимания обращать не стоит

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено atropos , 02-Июл-12 16:38 
> не кормите тролля. На Ваню даже внимания обращать не стоит

Давай ваню дедуплицируем?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 02-Июл-12 16:02 
http://gownos.blogspot.com/2011/10/6.html

Просвящайся.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 16:29 
И где же там как обнаружить две страницы совпадающие по содержимому? Особливо, без прочтения и сравнения их содержимого?

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


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 02-Июл-12 16:42 
"Сканирование ведётся в фоновом режиме, используя моменты простоя процессора"

Процесс, тупо сравнивающий всех со всеми.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 16:57 
> Процесс, тупо сравнивающий всех со всеми.

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


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено www2 , 03-Июл-12 19:29 
Можно определить по тому факту, что обе копии были загружены из одного блока на жёстком диске. В NetBSD унифицированный дисковый кэш и менеджер страниц. Кроме того, когда грузится разделяемая библиотека, её код отображается в выделенные каждому диапазоны адресов памяти, не смотря на то что каждое приложение использует фактически один и тот же код.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 17:33 
> Просвящайся.

Ваня подрабатывает священником?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 23:42 
та не, обычный евангелист

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 02:17 
> та не, обычный евангелист

Я его рассматриваю исключительно как шута :)


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 02-Июл-12 15:30 
>Какие ещё нахрен контрольные суммы? Где вы этого дерьма набрались? У памяти страничная адресация, ставим каждой странице флаг "испорчена" и при каждом обращении к странице процессор (железка) вызовет исключение. Дальше смотрим что хотим сделать со страницей, если чтение данных - продолжаем, если запись и страница используется двумя козлами - значит делаем две страницы, снимаем флаг "испорчена" и продолжаем работу.

Это ты cow описал, а не дедупликацию. То есть противоположный процесс. =)

ЗЫ гражданин модератор, ты зря удалил камент ыыгч про однобитный float. Если не понимаешь о чем речь, спроси старших сначала.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 02-Июл-12 16:09 
Всё написал правильно.

Про однобитный float уже писал, два вас повторю: можно ли построить на бумаге угол 0,0000000001 градуса? На тетрадном - нет, вообще - да. Можно ли создать структуру с однобитным float? В современных реализациях - нет, вообще - да.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 02-Июл-12 16:12 

> Можно ли создать структуру с однобитным float? В современных реализациях -
> нет, вообще - да.

Иван! Примите вещества и покиньте тред.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 02-Июл-12 16:21 
Ладно, ладно. Я просто сомневался, ты это был или Трухин.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 00:01 
Похоже Вас Трухин заминусовал

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Анон , 03-Июл-12 10:12 
> Можно ли создать структуру с однобитным float?
> float
> вообще - да.

Мда, таких сказочных идиотов даже на ЛОРе нет.

Ни на каком процессоре, оперирующим битами(в том числе в составе байтов)это не возможно в принципе.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 03-Июл-12 11:53 
16-битный float возможен?
15-битный float возможен?
14-битный float возможен?
...
2-битный float возможен?
1-битный float возможен?

Где граница после которой это становится "невозможно в принципе"? ("невозможно" пишется слитно)

Подсказки для размышлений:
- задача не имеет ограничений на точность хранимых данных
- в тип float можно записать целое число, напр. 0 или 1. И в 1 бите как раз тоже можно сохранить или 0 или 1


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 03-Июл-12 12:23 
> 2-битный float возможен?

Да, один бит на мантиссу и один на экспоненту.

> 1-битный float возможен?

Нет, плавать негде.

> Где граница после которой это становится "невозможно в принципе"?

Указана выше.

> ("невозможно" пишется слитно)

"расчёт" пишется с одной "с" (#127).

> Подсказки для размышлений:

Могу предложить другой "парадокс": если взять кучу песка и отнять одну песчинку -- что получится?  Правильно, куча.  На какой песчинке куча перестанет быть таковой? (либо же при обратном процессе добавления по песчинке -- когда станет кучей)

Ответ прост: свойством кучи является сыпучесть, метастабильность.  А в трёхмерном пространстве это свойство появляется у четырёх частиц, три из которых положены в основание, а четвёртая расположена на нём.  Поэтому три песчинки -- ещё не куча, а четыре -- уже кучка. :)


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 03-Июл-12 12:46 
Подсказку №2 вы проигнорировали, а зря.

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

По поводу подсказки №1: ваш пример другого рода, и решается он (для обладающих высшим техническим образованием) элементарно, ибо рассматривается в ходе обучения. Опрашиваем много людей сколько песчинок по их мнению представляют кучу, получим нормальное распределение, строим график - вуаля!

> Ответ прост: свойством кучи является сыпучесть, метастабильность

Вы гуманитарий?

> Поэтому три песчинки -- ещё не куча, а четыре -- уже кучка

А это ваше частное суждение. Учитесь отличать объектив от субъектива.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 03-Июл-12 13:02 
> Подсказку №2 вы проигнорировали, а зря.

Это такая же подсказка, как "микроскопом можно забивать гвозди -- и молотком можно забивать гвозди; следовательно, молоток является микроскопом".

> float - это тип данных с плавающей точкой. Ни о какой мантиссе
> или экспоненте никто не говорил, это лишь один из вариантов хранения
> значения.

Замечательно, предъявите _плавающую_ точку в _любом_ однобитном формате записи данных.  Можно оставить бит под одну точку, но не останется числа.  Можно заменить число предположением, но это уже мухлёж на тему хранения недостающей информации сбоку.

> Никто не мешает вам напр. умножить float-значение скажем на 100
> млн. и сохранить как целое - почему бы и нет?

Это и не будет значение с плавающей точкой, а целочисленное; плюс см. выше про мухлёж.

> По поводу подсказки №1: ваш пример другого рода, и решается он (для
> обладающих высшим техническим образованием) элементарно, ибо рассматривается
> в ходе обучения.

Смотря какого -- мне вот попалось у Альтова (Альтшулера), а не в школе/лицее/универе.  Неплохая книжка по ТРИЗ была, кстати.

> Опрашиваем много людей

зпт
> сколько песчинок

зпт
> по их мнению

зпт
> представляют кучу, получим нормальное распределение, строим график - вуаля!

И Вы с такой методикой ещё будете задавать вопросы вроде нижеследующего...

>> Ответ прост: свойством кучи является сыпучесть, метастабильность
> Вы гуманитарий?

Я пишу обеими руками.

>> Поэтому три песчинки -- ещё не куча, а четыре -- уже кучка
> А это ваше частное суждение. Учитесь отличать объектив от субъектива.

Это частное суждение достаточно строго обосновано, в отличие от Вашего.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 03-Июл-12 13:15 
> микроскопом можно забивать гвозди -- и молотком можно забивать гвозди; следовательно, молоток является микроскопом

Нет, но это означается что для забивания гвоздей молоток не обязателен. Также как для хранения float не обязательно хранить его именно в виде мантисса-экспонента.

> Замечательно, предъявите _плавающую_ точку в _любом_ однобитном формате записи данных

Ещё раз повторю подсказки для размышлений:
- задача не имеет ограничений на точность хранимых данных
- в тип float можно записать целое число, напр. 0 или 1. И в 1 бите как раз тоже можно сохранить или 0 или 1

> Я пишу обеими руками.

Я тоже. Чем ещё померяемся? :-) Но не особо понимаю как это поможет в решении задачи.

> Это частное суждение

Т.е. субъективное по определению, хотя и может в частном случае совпадать с объективным.

> Это частное суждение достаточно строго обосновано

А это безразлично. Когда-то строго обосновывали что Земля плоская и стоит на 3 слонах.

---

Вопрос о сохранении однобитного float исключительно теоретический и практической пользы не имеет. Но именно такие вопросы напр. на собеседованиях (хотя я не с Си работаю) позволяют за короткое время многое понять о собеседнике.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 03-Июл-12 13:39 
>> "микроскопом можно забивать гвозди -- и молотком можно забивать гвозди;
>> следовательно, молоток является микроскопом"
> Нет

Уже хорошо.

>> Замечательно, предъявите _плавающую_ точку в _любом_ однобитном формате записи данных
> Ещё раз повторю подсказки для размышлений:
> - задача не имеет ограничений на точность хранимых данных

Речь не о точности, а о принципиальном отличии, позволяющем называть значение таковым с плавающей запятой.  Если же сводить всё к частным случаям -- то разумеется, комплексное число может заодно быть вещественным, рациональным, целым, натуральным и вообще единицей.  Но не возможность записи единицы открывает возможность работы с комплексными числами, поймите наконец.

>>> Вы гуманитарий?
>> Я пишу обеими руками.
> Я тоже.

Это был ответ на вопрос.  Перекликается с "unsigned long letter" вот здесь: http://people.cs.und.edu/~rmarsh/CLASS/CS451/HANDOUTS/CHumor... :)

>>> это ваше частное суждение
> Т.е. субъективное по определению

Разумеется.

>> Это частное суждение достаточно строго обосновано
> А это безразлично.

Жаль.

> Когда-то строго обосновывали что Земля плоская и стоит на 3 слонах.

Строгого обоснования так и не видел, хотя интересовался когда-то восточными религиями.

> Вопрос о сохранении однобитного float исключительно теоретический и практической
> пользы не имеет. Но именно такие вопросы напр. на собеседованиях (хотя я
> не с Си работаю) позволяют за короткое время многое понять о собеседнике.

Причём в обе стороны.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 03-Июл-12 15:23 
> Если же сводить всё к частным случаям -- то разумеется, комплексное число может заодно быть вещественным, рациональным, целым, натуральным и вообще единицей

Наконец то. И чего, спрашивается, шумели?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 03-Июл-12 16:28 
> И чего, спрашивается, шумели?

Того, что берёте один частный случай (однобитовую запись) и обобщаете на float, не дав себе труда вообще понять, что есть float.  Ну и до кучи возмутило мелкое напёрсточничество со ста миллионами.  Объяснения постарался представить выше.


"Проект по реализации системы дедупликации памяти для..."
Отправлено arisu , 03-Июл-12 16:42 
Миша, оно же не поймёт. причём тут неважно, упорное оно такое потому, что не хочет признать ошибку, или потому, что глупое. как будто ты по другим комментариям не видишь, что оно феерически некомпетентно в любой теме, на которую берётся рассуждать.

"Проект по реализации системы дедупликации памяти для..."
Отправлено Michael Shigorin , 03-Июл-12 17:05 
> как будто ты по другим комментариям не видишь, что оно феерически некомпетентно
> в любой теме, на которую берётся рассуждать.

Ну почему, по некоторым связанным с системной частью, сотовой связью и IIRC электротехникой бывают вполне содержательные комментарии (пока не происходило схлопывания в win vs lin).

А сам упираюсь ровно ради того, чтоб человек или пояснил, или осознал.  Не ради спора, ради человека.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Анон , 03-Июл-12 21:50 
> Ещё раз повторю подсказки для размышлений:
>- задача не имеет ограничений на точность хранимых данных
>- в тип float можно записать целое число, напр. 0 или 1. И в 1 бите как раз тоже можно сохранить или 0 или 1
> напр. 0 или 1. И в 1 бите как раз тоже можно сохранить ТОЛЬКО или 0 или 1

Чуть подправил, не благодари. В одном бите можно сохранить только 0 или 1 => только ЦЕЛОЕ число => НЕВОЗМОЖНО сохранить число с плавающей точкой.

В типе float МОЖНО хранить число с плавающей точкой => 1 бит не может быть типом float.

Если и так непонятно, то ты клинический идиот.

PS: Заменить 1 или 0 на 0.389 и сказать, что это float - это ЛПП, ибо информация о том, что это 0.389 хранится где-то сбоку и НЕ ВЛЕЗАЕТ в ОДИН БИТ.

> Вопрос о сохранении однобитного float исключительно теоретический и практической пользы не имеет. Но именно такие вопросы напр. на собеседованиях (хотя я не с Си работаю) позволяют за короткое время многое понять о собеседнике.

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


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 04-Июл-12 11:18 
Ваши размышления на уровне: в автобусе осталось одно свободное место, значит сесть может лишь один пассажир. А если может сесть лишь один пассажир, то это не автобус, а личный автомобиль.

Тип - float, но размер типа определяет программист. Если он определил 1 бит - то и сохранено будет информации на 1 бит. Если определил 100 Гб - то будет сохранено информации на 100 Гб. Программист идиот или может просто ошибся? Возможно, но это не наше дело, т.к. вопрос теоретический: можно или нельзя.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 04-Июл-12 17:13 
> Ваши размышления на уровне: в автобусе осталось одно свободное место,
> значит сесть может лишь один пассажир. А если может сесть лишь один пассажир,
> то это не автобус, а личный автомобиль.

Если по постановке задачи сесть может лишь один пассажир, то это не автобус.

PS: s/месть/сесть/ :)

> Тип - float, но размер типа определяет программист.

Размер -- да, но в пределах, допустимых для типа.  Не получается куча из одной песчинки, свойств не хватает.

Даже не знаю, как охарактеризовать подобное заблуждение и упорное в нём пребывание.  Неужели Вы в принципе неспособны различать сущности по их свойствам?  Или прилипший "парадокс" настолько дорог?  Ведь существуют и более практичные методики отбора кандидатов, чем "объясните чернильное пятно": http://morethancoding.com/2012/04/30/5-signs-that-you-should.../


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 04-Июл-12 01:28 
>Замечательно, предъявите _плавающую_ точку в _любом_ однобитном формате записи данных.

"Ты можешь представить двухбитный float, когда и мантисса и экспонента каждая представлена одним битом,- сказал Мокурай. - Теперь покажи мне однобитный float."


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 03-Июл-12 18:11 
Куча перестаёт быть кучей тогда, когда на подсчёт песчинок,
тратится меньше слов, чем на описание того, что такое куча.
:)  

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 04-Июл-12 00:45 
>[оверквотинг удален]
> ...
> 2-битный float возможен?
> 1-битный float возможен?
> Где граница после которой это становится "невозможно в принципе"? ("невозможно" пишется
> слитно)
> Подсказки для размышлений:
> - задача не имеет ограничений на точность хранимых данных
> - в тип float можно записать целое число, напр. 0 или 1.
> И в 1 бите как раз тоже можно сохранить или 0
> или 1

0-битный float возможен?
-1-битный float возможен?
-2-битный float возможен?
𝜋-битный float возможен?
-666,(6)-битный float возможен?
42*sqrt(-1) - битный float возможен?
Мне кажется мы близки к перевороту в современной науке, который наконец даст человечеству гравитационный щит и откроет портал в другие миры. Подумаешь бозон Хиггса. Что он в сравнении с однобитным float?!


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 04-Июл-12 08:12 
Мужики вы не фкуриваете.

1. Бит - это условная единица информации. (единицей может быть любое множество даже бесконечное).
2. Количество его состояний зависит от системы счисления: 2-ная, 3-ная, n-чная,  
3. Машина различает эти состояния по разности потенциалов в сравнении с другими состояниями.
   Для двоичной достаточно различать (+) от (0), для 3-чной (+) от (0) и от (-),....    
4. Системы счисления бывают с действительными, трансцендентными основаниями: 𝜋-ная, φ-ная
5. Что мешает сделать TRUE равное 2.71828...  NOT TRUE, то есть FALSE, как обратное число: 1/e
6. Как будет машина различать 2.71828... от 0.3678..., хрен знает.
7. Естественно поменяются сами операции, функции и таблицы истинности (да и будут ли они вообще нужны?!)
8. Простейшие операции будут не AND/OR/NOT, а степени, логарифмирование, потенцирование, sh(), ch(), th(), cth()


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 04-Июл-12 11:54 
Правы, кроме п.2.

Количество состояний определяется разработчиком системы и зависит от технических возможностей по разделению состояний. Так если система может разделить лишь два состояния (напр. 5 вольт и 12 вольт) - то она будет бинарной, три состояния - третичной, и т.д. Система счисления - лишь представление значения в удобной для нас форме.

И алгоритм - способ перевода системы из состояния А в состояние Б, используя имеющиеся возможности системы.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 04-Июл-12 13:25 
У бита в любой системе счисления будет 2 состояния, потому что бит это binary digit

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено тень_pavel_simple , 04-Июл-12 13:29 
> У бита в любой системе счисления будет 2 состояния, потому что бит
> это binary digit

http://www.computer-museum.ru/histussr/12-1.htm


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 04-Июл-12 13:34 
это к чему?

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено тень_pavel_simple , 04-Июл-12 13:46 
> это к чему?

это к тому что у действительно существовавшей вычислительной техники 1 бит мог иметь 3 состояния.

google + троичная информатика


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 04-Июл-12 14:17 
Лолшто? Где конкретно написано(кроме опеннета и лора=) про бит, имеющий три состояния?

ЗЫ Хочу выразить глюбочайшую благодарность этому ресурсу! Уже третий день подряд местные комментаторы делают мой день!
ЗЫЗЫ вру не третий, четвертый день.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 04-Июл-12 14:31 
Одно из определений бита звучит как "бит — это энтропия простейшей физической системы, которая может быть только в двух равновероятных состояниях".

Термина для "N равновероятных состояний" нет, поэтому продолжают использовать бит, понимая что его как: "бит - это условная единица информации. (единицей может быть любое множество даже бесконечное)."

> Уже третий день подряд местные комментаторы делают мой день

С твоим уровнем интеллекта можешь взять учебник напр. по кибернетике - уржёшься! Гарантия.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 04-Июл-12 15:21 
ты мне бит имеющий три состояния покажи. Про однобитный float так и быть умолчим. И, пожалуйста, больше без шизофазии с претензией на матан.



"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 05-Июл-12 00:20 
> ты мне бит имеющий три состояния покажи.

А в чем проблема-то? -1, 0, +1

Кстати, на эмуляторах троичная реализуется как 1, 0 и  11


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 05-Июл-12 01:51 
>> ты мне бит имеющий три состояния покажи.
>А в чем проблема-то? -1, 0, +1

Осталось подогнать это под какое-нибудь определение бита и Нобелевская премия у нас в кармане.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 05-Июл-12 00:15 
> Одно из определений бита звучит как "бит — это энтропия простейшей физической
> системы, которая может быть только в двух равновероятных состояниях".
> Термина для "N равновероятных состояний" нет, поэтому продолжают использовать
> бит, понимая  что его как: "бит - это условная единица информации. (единицей может
> быть любое множество даже бесконечное)."

Ну чуток подумать, то для N-чной системы счисления это будет звучать как:

Бит — это логарифм по основанию N, вероятности равновероятных событий
или
сумма произведений вероятности на логарифм по основанию N, вероятности при равновероятных событиях;


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 04-Июл-12 14:56 
> [...] про бит, имеющий три состояния?

Это был не бит, а трит.  Состояния были +1, 0, -1 и на них гораздо разумнее ложилась человеческая математика, по воспоминаниям работавших с такими машинами.

Дело было в том, что тогда и здесь на двух ферритовых колечках получалось надёжно сохранить два или три состояния, а не полных четыре: http://ka2.ru/nauka/rumjantsev.html


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 04-Июл-12 15:18 
>> [...] про бит, имеющий три состояния?
> Это был не бит, а трит.  Состояния были +1, 0, -1
> и на них гораздо разумнее ложилась человеческая математика, по воспоминаниям работавших
> с такими машинами.
> Дело было в том, что тогда и здесь на двух ферритовых колечках
> получалось надёжно сохранить два или три состояния, а не полных четыре:
> http://ka2.ru/nauka/rumjantsev.html

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


"(offtopic) потому что наша история"
Отправлено Michael Shigorin , 04-Июл-12 16:11 
> Зачем модератору

Ох, тёзка, не травите душу.  С радостью бы писал просто на общих основаниях.

> Настолько не о чем и не с кем поговорить, чтоль?

Иногда ситуативно бывает и так, но в данном разе для меня это вопрос про творчество vs копирование (а-ля ЕС).


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 04-Июл-12 15:26 
>Это был не бит, а трит.

Мне обещали бит. На трит не согласен! Тритом с тремя состояниями никого не удивишь.
И вообще зря его упоминаешь, как бы у пациента не случился приступ на тему однотритового float.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 05-Июл-12 00:27 
>>Это был не бит, а трит.
> Мне обещали бит. На трит не согласен! Тритом с тремя состояниями никого не удивишь.

В атоме водорода 1 - протон, в гелии - 2, в атоме лития - 3 протона,...
от этого атом он не перестаёт быть атомом.

слова трит, кубит,... придумали как раз для таких людей, дабы оферхед не наводили.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 05-Июл-12 02:03 
>В атоме водорода 1 - протон, в гелии - 2, в атоме лития - 3 протона,...
>от этого атом он не перестаёт быть атомом.

От этого водород не становится гелием. На бит и трит сам экстраполируешь?

>слова трит, кубит,... придумали как раз для таких людей, дабы оферхед не наводили.

Фраза подразумевает, что до этого шла речь о каких-то людях.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 05-Июл-12 20:53 
>>В атоме водорода 1 - протон, в гелии - 2, в атоме лития - 3 протона,...
>>от этого атом он не перестаёт быть атомом.
> От этого водород не становится гелием. На бит и трит сам экстраполируешь?

Ну вот что ты пристал к системе счисления,.. комплексное тоже число,
трансцендентное тоже число, числа Кэли, квантернионы, n-числа,... - все числа.

Число, в данных случаях, это минимальная единица измерения, она же операнд.
Подразумвается, что все операции подченены одним и тем же законам.

Задача на развитие мозга: В регисте флагов записано 0, требуется узнать систему счислния.


Кстати, кванта и эфира не существует.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 05-Июл-12 21:49 
Бит интересен тем, что это минимальная из существующих единиц измерения информации. Поэтому не надо мне подсовывать всякие трансцендентные числа и говорить, что это тоже бит. Они не годятся.
И чего ты кстати пристал к системам счисления я тоже не понимаю. Биту они перпендикулярны, если не считать, что чаще всего его представляют в двоичной, потому что удобно и практично.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено nagual , 06-Июл-12 13:55 
>>>В атоме водорода 1 - протон, в гелии - 2, в атоме лития - 3 протона,...
>>>от этого атом он не перестаёт быть атомом.
>> От этого водород не становится гелием. На бит и трит сам экстраполируешь?
> Ну вот что ты пристал к системе счисления,.. комплексное тоже число,
> трансцендентное тоже число, числа Кэли, квантернионы, n-числа,... - все числа.
> Число, в данных случаях, это минимальная единица измерения, она же операнд.
> Подразумвается, что все операции подченены одним и тем же законам.
> Задача на развитие мозга: В регисте флагов записано 0, требуется узнать систему
> счислния.
> Кстати, кванта и эфира не существует.

Я заметил некоторые ... не проходили в школе систем счисления. Это потому что их выкинули из школьной программы ? или потом что они идиоты ?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 09-Июл-12 10:22 
> Я заметил некоторые

Твоё дело молчать и слушать. Думать тебе не велели. Шёл мимо, ну и пиздуй дальше.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 05-Июл-12 00:12 
> У бита в любой системе счисления будет 2 состояния, потому что бит
> это binary digit

Сам ты бинанари дигит, bit — немного, чуть,...


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 05-Июл-12 02:11 
а float — буй.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 05-Июл-12 20:26 
> а float — буй.

Give me a little bit  - Дай мне немного двоичных цифр.  Угу...


"Проект по реализации системы дедупликации памяти для..."
Отправлено arisu , 05-Июл-12 20:33 
тебе не чисел, тебе таблеточек от ожирения.

"Проект по реализации системы дедупликации памяти для..."
Отправлено pavlinux , 05-Июл-12 20:54 
> тебе не чисел, тебе таблеточек от ожирения.

Оу, рейсхфилолог... ну тогда проведи расследование, что значило слово bit до 1900 года.


"Проект по реализации системы дедупликации памяти для..."
Отправлено arisu , 05-Июл-12 21:06 
> Оу, рейсхфилолог… ну тогда проведи расследование, что значило слово bit до 1900
> года.

мы живём в 19-м веке, да?

а ещё хочу поинтересоваться: ты про такие понятия, как «контекст» и «профессиональный жаргон» слышал?

а то, знаешь, слово «живот» когда-то тоже обозначало не совсем то же, что и сейчас. надеюсь, когда (если; лучше не надо, конечно) ты будешь жаловаться доктору «у меня рези в животе», он отправит тебя к психиатру — потому что «пациент малосвязно жалуется на неприятности в жизни».


"Проект по реализации системы дедупликации памяти для..."
Отправлено filosofem , 05-Июл-12 21:39 
>Оу, рейсхфилолог... ну тогда проведи расследование, что значило слово bit до 1900 года.

Это поможет выяснить, что же такое однобитный float?


"Проект по реализации системы дедупликации памяти для..."
Отправлено pavlinux , 05-Июл-12 22:05 
>>Оу, рейсхфилолог... ну тогда проведи расследование, что значило слово bit до 1900 года.
> Это поможет выяснить, что же такое однобитный float?

А я-то думал, мы про дедупликацию в ядре.


"Проект по реализации системы дедупликации памяти для..."
Отправлено filosofem , 05-Июл-12 22:19 
а я о чем?
Хочу дедуплицировать a little bit однобитовых float в ядре.

"Проект по реализации системы дедупликации памяти для..."
Отправлено pavlinux , 06-Июл-12 02:23 
> а я о чем?
> Хочу дедуплицировать a little bit однобитовых float в ядре.

Для этого нужон модуль памяти на бит.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 04-Июл-12 13:32 
>Мужики вы не фкуриваете.

Не зря же в новости сначала было написано "дудупликация памяти".
Одни невкуривают, другие(не буду показывать пальцем) не выдыхают, отсюда отсутствие взаимопонимания. =)



"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 05-Июл-12 01:41 
> 1-битный float возможен?

Хорошо, допустим бит выставлен в ноль. Что означает этот флоат? Ноль? Ну, допустим.
Окей, допустим, бит выставлен в единицу. Что это означает? И где, собственно, плаваюшая точка уместилась в одном бите? :)


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 05-Июл-12 10:27 
А что будет когда вы в 1-байтное целое захотите записать значение 999.999.999.999? Вот вам и ответ на ваш вопрос. От реализации зависит.

Как пример реализации: количество_битов_дробной_части = округление_вниз(количество_битов/2); количество_битов_целой_части = количество_битов - количество_битов_дробной_части. Теперь записать число, пусть даже в 1 бит, труда не составит. И да, вместо целой и дробной части можно использовать мантиссу и экспоненту, или числитель и знаменатель натуральной дроби, или любой другой удобный вам способ.

Размерность 1 бит - крайний случай, но, тем не менее, теоретически возможный.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 05-Июл-12 12:29 
Опять Ванька запутался (наверно не специально).
Ты говоришь про дробные числа.
float это не само число, а одна из форм представления числа. Ну и так уж сложились обстоятельства... короче тебе не повезло: эта форма представления по определению состоит из двух независимых друг от друга частей, а значит тебе придется представить обе эти части одним битом.
В этом деле мог бы помочь бит с более чем двумя состояниями, который вы Павликом феерично изобрели, но опять увы: такого бита в этой Вселенной не существует. Какое-то сплошное невезение, ну что за глупая Вселенная такому умному Ване досталась!

Ну и если в двух словах, в один бит можно записать вещественное число, но это будет не float.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено nagual , 05-Июл-12 12:35 
> Опять Ванька запутался (наверно не специально).
> Ты говоришь про дробные числа.
> float это не само число, а одна из форм представления числа. Ну
> и так уж сложились обстоятельства... короче тебе не повезло: эта форма
> представления по определению состоит из двух независимых друг от друга частей,
> а значит тебе придется представить обе эти части одним битом.
> В этом деле мог бы помочь бит с более чем двумя состояниями,
> который вы Павликом феерично изобрели, но опять увы: такого бита в
> этой Вселенной не существует. Какое-то сплошное невезение, ну что за глупая
> Вселенная такому умному Ване досталась!

Нахера вы этот бред тут пишете? У вас что xor на всю голову ?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 05-Июл-12 12:54 
А клоуны-то всё прибывают. =)

Чем именно месье недоволен?


"Проект по реализации системы дедупликации памяти для..."
Отправлено arisu , 05-Июл-12 19:03 
> А клоуны-то всё прибывают. =)
> Чем именно месье недоволен?

видать, розог получил от дона Хуана, вот и ходит злой.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 16:43 
>> Кэш для программирования на ЯВУ (в т.ч. Си)

почитайте What every programmer should know about memory. На русском уже тоже есть.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 02-Июл-12 17:07 
2007 г.

За это время уже МНОГОЕ изменилось...


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 17:36 
> За это время уже МНОГОЕ изменилось...

Ты, дятел, козыряешь 8086. С тех пор изменилось намного больше.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено grondek , 02-Июл-12 19:00 
Я вот до сих пор держу настолькой книгой Уильяма Стивенса TCP/IP в UNIX и прекрасно его описания работают в современных linux'ах.

Не настолько все изменилось с 2007 года. Внешне - возможно, но принципиально - нет.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 11:57 
> 2007 г.
> За это время уже МНОГОЕ изменилось...

Не настолько многое.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 05-Июл-12 01:45 
> Не настолько многое.

Достаточно многое. Например нынче -Os может быть лучше чем -O2 и прочие развороты циклов. Потому что бОльший процент попаданий в кеш компенсирует то что циклы не развернуты и прочая. А на классическом х86 было все наоборот. Да и вообще, месиво из декодеров и пачки рискообразных блоков выполнения за ними, которые даже не обязаны точно изображать целое число х86 ядер - это очень такой своеобразный "а я тут как бы х86".

Вплоть до того что например в случае бульдозера вообще не понятно сколькоядерным его такой вообще считать :)


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено kurokaze , 02-Июл-12 17:19 
>можно засунуть в задницу Торвальдсу

Ого, какие необычные фантазии, ай-я-яй.
Только от его жены ты отгребешь гарантированно


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 03-Июл-12 01:40 
> Кэш для программирования на ЯВУ (в т.ч. Си)

То-то даже прикладники упираются, чтоб по возможности cacheline alignment достичь, не то что ядерщики.  Пришёл сам великий Ваня, что-то кропавший на коленке, и давай всех учить.

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

PS: хотя вообще-то немножко стыдно так ёрничать, сам-то не системщик ни разу.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 02:18 
> То-то даже прикладники упираются, чтоб по возможности cacheline alignment достичь,

Ну ваня решил что если он не понимает как это работает - значит это никому вообще не надо.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 03-Июл-12 11:46 
В системах с вытесняющей многозадачностью приложение не управляет переключением контекстов, а каждое переключение обнуляет кэш.

Вчера длина линии кэша была 32 байта, сегодня 128 байт, и неоптимизированная программа под линию длиной 48 байт на современных процессорах быстрее, чем программа для Pentium I, оптимизированная для линии 32 байта.

Из всех оптимизаций по кэшу остались лишь:
- выравнивание данных минимум по 16 байт
- обращение к данным в порядке роста памяти, т.е. обращаться назад нежелательно
- хранить данные которые нужно обратывать рядом, так если есть массив структур {код, сумма} и нужно часто рассчитывать общую сумму, то нужно разбить на два массива - отдельно коды (которые для рассчёта общей суммы не нужны) и отдельно суммы, чтобы не тратить половину линии кэша на чтение кода.

Все остальные оптимизации только под текущий процессор.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 12:15 
> В системах с вытесняющей многозадачностью приложение не управляет переключением контекстов,
> а каждое переключение обнуляет кэш.

Не обязательно, хотя от холодного кеша обычно толку мало (обычно != всегда). Только вот между переключениями контекстов проходит вечность по меркам процессора. И сколько процессор успеет перелопатить данных между этими переключениями, очень сильно зависит от эффективности использования кеша.

> Вчера длина линии кэша была 32 байта, сегодня 128 байт, и неоптимизированная
> программа под линию длиной 48 байт на современных процессорах быстрее, чем
> программа для Pentium I, оптимизированная для линии 32 байта.

За всю историю в процессорах Intel размер кеш-линии был 32 и 64 байта, причем 64 - во всех процессорах, вышедших за последние лет 10. За AMD не скажу, но уверен, что там сидят не идиоты, и в их процах структура кеша такая же. Так что не надо выдумывать код для сферического кеша в вакууме.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 03-Июл-12 12:54 
> Не обязательно

Не обязательно лишь для ОС у которых все приложения в одном адресном пространстве (прощай, безопасность) и ситуаций когда приложению отдали одно ядро в монопольное использование и ОС использует разные адресные пространства памяти для разных ядер.

> вечность по меркам процессора

Обычно таймер калибруют на 100 Гц. Сколько у вас там воспроизводится фильм? Думаете за 0.01 секунды вашей "вечность" успеете?

> За всю историю в процессорах Intel размер кеш-линии

За всю историю кэшей стало аж 3 (вроде) уровня и у каждого свои линии. Вы о каком уровне так уверено рассуждаете? Или застряли во временах 486/Pentium I где уровень был лишь один?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 03-Июл-12 13:17 
>> вечность по меркам процессора
> Обычно таймер калибруют на 100 Гц. Сколько у вас там воспроизводится фильм?

При чём это всё тут?

> Думаете за 0.01 секунды вашей "вечность" успеете?

За 10^(-2) сек гигагерцовый процессор (10^9 Гц) производит 10^7 тактов.  Десять миллионов.

>> За всю историю в процессорах Intel размер кеш-линии
> За всю историю кэшей стало аж 3 (вроде) уровня и у каждого свои линии.

Можно пример?  Сходу наблюдаю про Xeon да Phenom данные о 64/64/64:
http://igoro.com/archive/gallery-of-processor-cache-effects/ (Example 3)
http://www.7-cpu.com/cpu/K10.html

> Вы о каком уровне так уверено рассуждаете? Или застряли
> во временах 486/Pentium I где уровень был лишь один?

Здрасьте, приехали.  В первых пентиумах L1 был набортный, а вот L2 мог быть оформлен и отдельной планочкой SRAM рядом с CPU socket (про 486 не уверен).  Ну и запятую опять уверенно зажилили.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 03-Июл-12 13:34 
Тактовая частота начиная с 486 уже не связана с количеством тактов.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 14:33 
> Тактовая частота начиная с 486 уже не связана с количеством тактов.

Тактов чего?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 05-Июл-12 01:50 
> Тактовая частота начиная с 486 уже не связана с количеством тактов.

Нормальная такая заява. Оказывается, тактовый сигнал - не для выполнения тактов. О как.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 05-Июл-12 11:34 
Очень кратко: изначально тактовая частота считалась как количество "inc al" за секунду. Потом появился кэш и внутренняя и внешняя частоты процессора и кэшированный стал выполняться в 20-1000 раз быстрее, хотя прирост скорости выполнения остального кода был не очень существенным. Поэтому инженеры Интел разработали некий секретный (коммерческая тайна) алгоритм определения частоты. По сути это программа, запускаешь её - получаешь цифру - тактовую частоту. Инженеры АМД разработали свой секретный алгоритм, который давал примерно те же самые цифры. Скорости росли, и вот алгоритмы Интел и АМД стали расходиться, цифры алгоритма АМД были ниже, чем у алгоритма Интел, при сравнимой производительности приложений. Тогда АМД ввёл "+": т.е. "2800 (3200+)" означает что по методике АМД частота 2800 попугаев, но производительность процессора такая же, как у Интела с 3200. Затем пришла многоядерность и оценить производительность стало ещё сложнее: что быстрее 2 ядра по 2800 попугаев или 4 ядра по 1600 попугаев? По привычке этих попугаев продолжают называть "герцами".

Технически: в процессоре есть команда RDTSC (read TSC), возвращающая некое число (TSC), о котором известно лишь что оно равномерно растёт с момента включения процессора. Количество на которое увеличилось TSC за секунду операционные системы считают тактовой частотой. Подробно - в документации по процессорам.

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


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 07-Июл-12 18:07 
> Поэтому инженеры Интел разработали некий секретный
> (коммерческая тайна) алгоритм определения частоты.

Чушь. То, о чем вы говорите - это просто "индекс", к тактовой частоте не имеющий прямого отношения. В индексе также учитывается поколение и прочие фичи процессора.

Но частота ядра была, есть и будет в обозримом будущем, хоть и плавающая. И для каждой модели CPU частоты известны.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 08-Июл-12 00:05 
Как?! Вы не знаете про процессор без тактовой частоты?!
Тот самый знаменитый Ванин процессор, который оперирует однобитными float и битами с тремя состояниями.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Andrey Mitrofanov , 08-Июл-12 16:57 
>битами с тремя состояниями.

Ваня-то Ваней, но Отечественные Разработки не трожь!

http://ru.wikipedia.org/wiki/%D0%A2%D1%8...


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено filosofem , 08-Июл-12 19:04 
всё, хватит, сколько можно?! Надоели.
Ты тоже путаешь понятия бит и разряд?

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 09-Июл-12 14:56 
Вам привести строки линуксового кода, рассчитывающие тактовую частоту на основании RDTSC или сами забьёте в поисковик "rdtsc linux kernel frequency"? Затем почитайте что такое RDTSC из доки по командам процессоров Интел. Затем прекратите мелить чушь!

Многие заблуждаются считая что 1 Гц - это 1 операция в секунду. Или как вы, считая что это "просто некий индекс". Тактовая частота – это количество тактов синхронизации, задаваемых материнской платой. Количество операций в секунду измеряется во флопсах (например, с ними тоже не всё так просто), в отличии от тактовой чистоты, которая как и всякая частота измеряется в герцах. Никоим образом нельзя приравнять 1 ГГц к одному миллиарду операций в секунду. Например, процессор Intel Core i7-975 XE с тактовой частотой 3,3 ГГц и 4 ядрами выдаёт отнюдь не 3,3ГГц x 4 = 13,2 миллиарда операций в секунду, а все 52 миллиарда (условно, нужно учитывать кэши и пр.; эти 52 млрд. получены запуском конкретной программы, запустим другую - получим другое число).

По поводу флопсов в частности и систем расчёта производительности вообще (вики): "Как и большинство других показателей производительности, данная величина определяется путём запуска на испытуемом компьютере тестовой программы, которая решает задачу с известным количеством операций и подсчитывает время, за которое она была решена. Наиболее популярным тестом производительности на сегодняшний день является программа Linpack, используемая, в том числе, при составлении рейтинга суперкомпьютеров TOP500."

По поводу тактов синхронизации: тактовый генератор задаёт частоту, все операции начинаются с приходом сигнала от генератора. По сути тактовый генератор как барабанщик на вёсельных галерах: на каждый стук поднимается весло, в процессоре - начинается новая операция. По мере роста производительности частоты также росли. Так как на выходе генератора квадратный сигнал (половина такта 0, уровень, половина такта 1, уровень), то можно использовать не только уровень 0-1 (или 1-0), а оба, т.е. частота осталась прежней, а производительность выросла вдвое. Дальше стали выполнять за половину такта не 1 операцию, а 2, затем 3, и т.д. Так тактовая частота разошлась с производительностью.

Сейчас тактовый генератор интегрирован в ядро и задаёт частоту процессора. К нему можно обратиться через RDTSC или с использованием HPET. А для совместимости генерируется сигнал "старого" тактового генератора - PIT.

Так как нормальным людям всё вышеизложенное барахло знать в общем то и не нужно, зато нужно тупо сравнивать какой из двух процессоров быстрее, то маркетологи использовали понятие тактовой частоты (Гц, МГц, ГГц) как показатель производительности. А об этом я уже писал.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 14:29 
> Не обязательно лишь для ОС у которых все приложения в одном адресном
> пространстве (прощай, безопасность) и ситуаций когда приложению отдали одно ядро в
> монопольное использование и ОС использует разные адресные пространства памяти для разных
> ядер.

Не путайте виртуальное адресное пространство процесса и физическое адресное пространство памяти.

>> вечность по меркам процессора
> Обычно таймер калибруют на 100 Гц. Сколько у вас там воспроизводится фильм?
> Думаете за 0.01 секунды вашей "вечность" успеете?

А какие у нас нынче частоты CPU? Учитывая, что большинство инструкций выполняется за единицы тактов, а промахи мимо кеша стоят сотни тактов...

И потом, декодирование видео - плохой пример. Это слишком простая задача, на современных CPU декодирование FillHD h264 даже половины ядра не сожрет (если, конечно, задача - просмотр фильма). Зато кодирование и обработка видео и прочая числодробилка съедят столько, сколько дашь. И, как ни странно, эти приложения очень часто тюнят под кеш, SSE, многоядерность и пр. Интересно, почему...

>> За всю историю в процессорах Intel размер кеш-линии
> За всю историю кэшей стало аж 3 (вроде) уровня и у каждого
> свои линии. Вы о каком уровне так уверено рассуждаете? Или застряли
> во временах 486/Pentium I где уровень был лишь один?

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


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 03-Июл-12 15:08 
> Не путайте виртуальное адресное пространство процесса и физическое адресное пространство памяти.

Не путаю. Переключение процессов требует перезагрузки CR3, которое приводит к очистке кэша.

> А какие у нас нынче частоты CPU? Учитывая, что большинство инструкций выполняется за единицы тактов, а промахи мимо кеша стоят сотни тактов

Логической связи не вижу. Инструкций много, но каждая из них выполняются быстро. Промахи случаются, от программиста никак не зависят. Как вы можете их сравнивать?

> очень часто тюнят под кеш

Про оптимизацию под кэш обсуждение выше.

> Т.к. именно между ним и основной памятью разрыв наиболее существенный

Пруф, разумеется, у вас имеется. А также пруф что все линии кэшей в Intel длиной только 32 и 64 байта. Я вот нашёл про 128 байтные... Упс, проговорился, проговорился... :-) Жду пруфы, сладеньким *-)


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 15:41 
>> А какие у нас нынче частоты CPU? Учитывая, что большинство инструкций выполняется за единицы тактов, а промахи мимо кеша стоят сотни тактов
> Логической связи не вижу. Инструкций много, но каждая из них выполняются быстро.
> Промахи случаются, от программиста никак не зависят. Как вы можете их
> сравнивать?

Конечно случаются. Но как часто они случаются и насколько они компенсируются префетчем очень сильно зависит от программиста.

>> Т.к. именно между ним и основной памятью разрыв наиболее существенный
> Пруф, разумеется, у вас имеется. А также пруф что все линии кэшей
> в Intel длиной только 32 и 64 байта.

Пруф того, что основная память - самая медленная? Memtest что ли запустите...

Что касается кеш-линий, то пожалуйста:

http://www.intel.com/content/www/us/en/processors/architectu.../

Раздел 11.1, цитата:

For Intel Core i7 processors and processors based on Intel Core, Intel Atom, and Intel
NetBurst microarchitectures, Intel Core Duo, Intel Core Solo and Pentium M proces-
sors, the cache lines for the L1 and L2 caches (and L3 caches if supported) are 64
bytes wide.

...

The L1 and L2 cache lines in the P6 family and Pentium processors are 32 bytes wide...

> Я вот нашёл
> про 128 байтные... Упс, проговорился, проговорился... :-)

А теперь давайте свои пруфы, вдруг я чего не знаю.

> сладеньким *-)

С дружком своим так разговаривайте.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 15:52 
> Что касается кеш-линий, то пожалуйста:
> http://www.intel.com/content/www/us/en/processors/architectu.../
> Раздел 11.1, цитата:

Забыл указать, что Volume 3.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 03-Июл-12 16:19 
> Я говорил про кеш последнего уровня (LLC), каким бы он ни был.
> Т.к. именно между ним и основной памятью разрыв наиболее существенный.
> И да, сейчас, как и несколько последних лет, это L3.

Ой, а что за разрыв?  По объёму, скорости и количеству операций разница с основной RAM наибольшая у L1 cache всё-таки.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 16:28 
> Ой, а что за разрыв?  По объёму, скорости и количеству операций
> разница с основной RAM наибольшая у L1 cache всё-таки.

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


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 03-Июл-12 16:32 
> В основную память не из L1 ходят, а из LLC.

А, всё, спасибо.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 05-Июл-12 01:51 
> разы, а то и на порядки. На более низких уровнях кешей разница не столь драматична.

DDR3 вообще обладает хоть и приличным бандвизом, но latency у него не фонтан.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Mr. Cake , 03-Июл-12 03:43 
Кэш один хрен сбрасывается при переключении контекста потока, так что ничего, абсолютно ничего страшного не случится.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено б.б. , 02-Июл-12 14:09 
Отличная технология для разной электроники, где памяти много не бывает. Десктопы тоже к этой электронике относятся.

Интересно, в Debian хватит смелости :) из-коробки добавить?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено ананим , 02-Июл-12 14:13 
Смелости хватит.
Дурости — нет.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено б.б. , 02-Июл-12 15:31 
Почему дурости?

KSM же есть в squeeze-backports и в wheezy


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено rshadow , 02-Июл-12 16:08 
Сначала федора и убунта потестят на хомячках.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено SubGun , 02-Июл-12 16:12 
В посторонние ветки, думаю, добавят, а вот в стабильную вряд ли.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 16:38 
"посторонние ветки" - это какие?

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 14:47 
> Интересно, в Debian хватит смелости :) из-коробки добавить?

Во фре этого нет - значит, в дебиане оно не нужно.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Viliar , 02-Июл-12 14:59 
Наркоманы на опеннете не нужны.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 15:11 
> Наркоманы на опеннете не нужны.

Зато они нужны при разработке дебиана.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено kurokaze , 02-Июл-12 17:19 
> Зато они нужны при разработке дебиана.

И фряшечки с опенком!


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 17:37 
> И фряшечки с опенком!

Грибочки? :)


"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено Magister , 02-Июл-12 14:24 
Хм... интересно это на Андроид зафигачить, авось и будет пошустрее на девайсе с 128 Mb RAM.
Только вот что-то не нашел ссылки на исходники на китайском сайте :(

"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено Magister , 02-Июл-12 14:28 
Вроде нашел патчики :)
Надо попробовать, только времени чуток найду...

"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено grondek , 02-Июл-12 14:57 
А на андроиде прям полно одинаковых страниц в памяти? Не будет ли этот механизм только кушать лишнее время и так несильного процессора.

"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено б.б. , 02-Июл-12 15:31 
> А на андроиде прям полно одинаковых страниц в памяти? Не будет ли
> этот механизм только кушать лишнее время и так несильного процессора.

Так в том то и смысл uksm, что это более быстрая реализация ksm.


"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено Михрютка , 02-Июл-12 16:08 
> Так в том то и смысл uksm, что это более быстрая реализация
> ksm.

смысл в том, что это _прозрачная_ реализация ksm.

т.е. нет необходимости писать код с хинтами для ksm.


"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено б.б. , 02-Июл-12 16:13 
А разве echo 1 > compact_,memory не то же самое делало?

"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено Михрютка , 02-Июл-12 16:27 
не-не, то дефрагментация памяти.

"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено Magister , 02-Июл-12 15:32 
> А на андроиде прям полно одинаковых страниц в памяти? Не будет ли
> этот механизм только кушать лишнее время и так несильного процессора.

А хз. Вот хочу попробовать, оценить. Вдруг будет толк.


"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено Аноним , 02-Июл-12 15:42 
Напишите 30 SMS-сообщений вида "Привет", "Как дела?", "ОК", "Скоро буду", не отправляя их, и посмотрите - будет ли профит.

"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено grondek , 02-Июл-12 15:49 
На странице памяти с смской будет еще куча служебной информации, которая не будет повторяться. Вряд ли здесь поможет дедупликация.

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


"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено Аноним , 02-Июл-12 17:38 
> Напишите 30 SMS-сообщений вида "Привет", "Как дела?", "ОК", "Скоро буду",

Хорошие такие смски по 4Кб :)


"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено Михрютка , 02-Июл-12 15:44 
правильно, где еще гонять виртуальную ферму, кроме как на андроиде. надо же чем-то все эти ядра загрузить, чо они зря простаивать-то будут :)

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено PnD , 02-Июл-12 15:47 
  Любопытна тут будет вероятность коллизии в использованном хэше - что-то мне подсказывает, что при работе с ОЗУ нарваться на такое гораздо легче (много-гигабайтные быстро меняющиеся массивы). У китайцев нарыть не осилил, но по-любому "сильный" алгоритм будет плохо согласовываться со скоростью.
  Короче, без побайтного CMP перед объединением указателей или чего-то подобного я бы эту шнягу использовать не рисковал.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 02-Июл-12 16:06 
>   Короче, без побайтного CMP перед объединением указателей или чего-то подобного
> я бы эту шнягу использовать не рисковал.

там страницы именно так и сравнивают. хеши не используются.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 18:11 
>>   Короче, без побайтного CMP перед объединением указателей или чего-то подобного
>> я бы эту шнягу использовать не рисковал.
> там страницы именно так и сравнивают. хеши не используются.

типичное решение - сравнивать для начала хеши, а уж при их совпадении и само содержимое. на эту тему недавно даже атака исчерпания ресурсов была.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 02-Июл-12 20:41 

> типичное решение - сравнивать для начала хеши, а уж при их совпадении
> и само содержимое. на эту тему недавно даже атака исчерпания ресурсов
> была.

patented by vmware


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 03-Июл-12 01:43 
>> типичное решение - сравнивать для начала хеши, а уж при их совпадении
>> и само содержимое.
> patented by vmware

Вообще странно, prescreening -- давным-давно известная даже не особо skilled in art'ам техника... (сталкивался с http://www.daylight.com/dayhtml/doc/theory/theory.finger.html в одном из применений)


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено PnD , 03-Июл-12 14:04 
> там страницы именно так и сравнивают. хеши не используются.

  Чигоо? Для каждого блока листать всю память?! Не верю (с)


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 03-Июл-12 14:15 
>> там страницы именно так и сравнивают. хеши не используются.
>   Чигоо? Для каждого блока листать всю память?! Не верю (с)

конструкция KSM находится с полпинка. в интернетах или в /usr/src/linux

проверьте сами


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 15:54 
Подобные технологии нужны только при виртуализации на серверах. На десктопе, если цпу позволяет, сжатие памяти - само то.
А с заявлениями типа "использует более быстрый и эффективный в плане снижения нагрузки на CPU алгоритм сканирования" без нормальных оценок и тестов данная китайщина ваще идет лесом. Очередная брехня.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 02-Июл-12 16:46 
ггг шутники эти китайцы.

http://kerneldedup.org/wp-content/themes/ilost.full/images/e...


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 17:05 
Миллион китайцев выключили свои компьютеры на 5 секунд. А потом включили. Под действием электромагнитной индукции земная ось наклонилась еще на 0.01 градуса и таяние ледников ускорилось...

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Денис , 02-Июл-12 18:51 
> Миллион китайцев выключили свои компьютеры на 5 секунд. А потом включили. Под
> действием электромагнитной индукции земная ось наклонилась еще на 0.01 градуса и
> таяние ледников ускорилось...

Может тогда уж миллиард ?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Денис , 02-Июл-12 18:52 
>> Миллион китайцев выключили свои компьютеры на 5 секунд. А потом включили. Под
>> действием электромагнитной индукции земная ось наклонилась еще на 0.01 градуса и
>> таяние ледников ускорилось...
> Может тогда уж миллиард ?

А еще просадка напряжения будет при одновременном включении :))


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 02:22 
> Может тогда уж миллиард ?

Миллиард китайцев ломали сервер. После того как каждый китаец по 3 раза опробовал пароль "Мао Цзэдун", сервер был вынужден согласиться что пароль действительно "Мао Цзэдун".


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Mr. Cake , 03-Июл-12 03:46 
Шутка шуткой, а мускуль до недавнего времени и правда сдавался.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Тот самый аноним , 02-Июл-12 16:57 
Так оно еще и лишнюю память жрет, широкую на широкую, неправильно!!!

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 17:33 
Мне думается отказ в выделении памяти для второго блока. Так как запас должен быть явно выше чем максимальный "дедуплированный" блок.

"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено Денис , 02-Июл-12 18:53 
А что, в линуксе такая не хватка памяти ?

"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено ананим , 02-Июл-12 19:39 
Угу.
Типа андроидов.
Вам, ждущим щастья от мс, ещё предстоит… переполсти на линух.

"Проект по реализации системы дедупликации памяти для ядра Linux"
Отправлено Аноним , 03-Июл-12 02:24 
> А что, в линуксе такая не хватка памяти ?

Если запустить 10 виртуалок с одинаковой начинкой типа ядра и прочего - не очень умно хранить в памяти 10 копий одного и того же ядра и библиотек. По сути shared memory на новый лад.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 02-Июл-12 21:38 
А чё про эту фишку не сказали

* 6. Full Zero Page consideration(contributed by Figo Zhang)
*    Now uksmd consider full zero pages as special pages and merge them to an
*    special unswappable uksm zero page


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 02-Июл-12 21:53 
Мужики, мож я обкурился плацебо, но по-моему хром быстрее стал страницы грузить. :D

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 02-Июл-12 23:10 
Если сомневаешься - проверь скорость интернета, рост, вес. Эти физические константы должны быть неизменны.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено DevZone , 02-Июл-12 23:51 
Оптимизация сомнительная,
Только когда площадка по пару тысяч серверов научных поможет уменьшить дублиикаты данных а так это безщадно рекурсия

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 03-Июл-12 00:33 
Процессоры работают на пониженой, до 1000 MHz, CPUs Load 2-3%, где бесщадная  рекурсия?

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 03-Июл-12 01:47 
> Только когда площадка по пару тысяч серверов научных

А им-то каким местом?  Понимаю, что mosix будто бы оживили и вроде как добили distributed shared memory, но... (да и неудобно управляться с горкой серверов, сейчас скорее блейды)


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 02:29 
> Оптимизация сомнительная,

Когда у вас будет 20 виртуалок с одинаковой системой но разными сервисами на них - вы по другому запоете. Если одна система будет жрать N памяти на это а другая 5 * N - какая система будет лучше?  :)

Вот и уходит пингвин в отрыв еще дальше. Его открытость позволяет на нем обкатывать самые смелые фантазии под любые цели. Не ожидая пока кто-то где-то раздуплится.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 03-Июл-12 10:17 
> Не ожидая пока кто-то где-то раздуплится.

В смысле сделает инновационный раздупликатор? :)


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 05-Июл-12 01:54 
> В смысле сделает инновационный раздупликатор? :)

Как-то так, да :). Ну а что, нужная технология в типовых хостингах и облаках с их пачкой почти одинаковых виртуалок же. И что самое смешное, конкурентам нечем ответить и вообще пока они снимутся с тормоза - пингвин их лишний раз отовсюду выпнет.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено nagual , 05-Июл-12 10:01 
>> В смысле сделает инновационный раздупликатор? :)
> Как-то так, да :). Ну а что, нужная технология в типовых хостингах
> и облаках с их пачкой почти одинаковых виртуалок же. И что
> самое смешное, конкурентам нечем ответить и вообще пока они снимутся с
> тормоза - пингвин их лишний раз отовсюду выпнет.

Дядя снимись с тормоза в вмваре это есть уже вчера :-)))


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено lucentcode , 03-Июл-12 01:26 
Для сервера и виртуализации это может и годное решение. Для десктопа оперативы обычно более чем достаточно и легко нарастить, а процессор отстаёт от желаемого по производительности. Так что на десктоп не нужно это переносить бездумно. Дистростроители надеюсь не будут включать это в ядро для десктопных дистров.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 03-Июл-12 01:50 
> Для сервера и виртуализации это может и годное решение. Для десктопа оперативы
> обычно более чем достаточно и легко нарастить, а процессор отстаёт от
> желаемого по производительности. Так что на десктоп не нужно это переносить
> бездумно. Дистростроители надеюсь не будут включать это в ядро для десктопных
> дистров.

# ps -eLf | grep chromium | wc -l
51

51 тред - это открыто 10 вкладок, почему бы и не объединить скажем картинки и флеша.  
Во-вторых, один из основных законов админа, помимо "Работает - не трогай!", - "Памяти не бывает много!"
А админовская рабочая станция, да и десктоп программатора - это сервер, телефон, плеер,
компилятор, кластер в одном флаконе.

К примеру Netbeans рожает очень много тредов. Всеми любимый console-kit-daemon,
это примерно 60 тредов :) ENV окружение и переменные у большинства процессов схожи...  

Так что, если эта фенька действительно работает как описано, то она будет следующей must have после AUTOGROUP.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено DevZone , 03-Июл-12 08:46 
> 51 тред - это открыто 10 вкладок, почему бы и не объединить

мультиплексирование?
у флеша нет сорцов, это конейнеры


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 05-Июл-12 01:55 
Опять этот GermoZone вылез.  

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ваня , 03-Июл-12 12:00 
> почему бы и не объединить скажем картинки и флеша

Объединить на уровне приложения или на уровне ядра ОС?

> ENV окружение и переменные у большинства процессов схожи

Безопасность важнее скорости и экономии памяти. На примере Windows (про Линукс не знаю): в Win9x DLL грузились один единственный раз, т.е. напр. kernel32.dll была загружена единожды и использовалась всеми приложениями. В WinNT у каждого процесса изолированная область памяти и собственный набор DLL, с которыми оно может делать что угодно, хоть писать в их память. Сбой приложения в 9x мог повлечь проблемы в других приложениях, сбой приложения в NT приводил лишь к закрытию сбойного приложения.

Решение в статье работает на уровне страниц, т.е. оно понятия не имеет о хранимых данных и возможно что если напр. Блокнот и SQL-сервер вдруг создали страницы с одинаковым содержимым, то останется только одна.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено PnD , 03-Июл-12 14:23 
> Безопасность важнее скорости и экономии памяти. На примере Windows (про Линукс не
> знаю): в Win9x DLL грузились один единственный раз, т.е. напр. kernel32.dll
> была загружена единожды и использовалась всеми приложениями. В WinNT у каждого
> процесса изолированная область памяти и собственный набор DLL, с которыми оно
> может делать что угодно, хоть писать в их память. Сбой приложения
> в 9x мог повлечь проблемы в других приложениях, сбой приложения в
> NT приводил лишь к закрытию сбойного приложения.

  Что-то Вы напутали. В NT-ях насколько я помню есть минимум 2 способа импортировать DLL: в память процесса (для ускорения доступа) или в шаред-режиме, когда импортируется только таблица с адресами используемых функций. При ином раскладе работа того же M$-офиса 2003 на терминальном сервере (каждому по эксплореру) на 40 юзеров жрала не 4 гига памяти (как было на моей практике, а там кроме офиса еще много чего вертели), а 10-20-30... Так вот, в моем случае память в основном ели дельфевые поделки (их модно было статически линковать).

> Решение в статье работает на уровне страниц, т.е. оно понятия не имеет
> о хранимых данных и возможно что если напр. Блокнот и SQL-сервер
> вдруг создали страницы с одинаковым содержимым, то останется только одна.

  Опять сморозили. При записи происходит проверка блока. Дальше объяснять?


"Проект по реализации системы дедупликации памяти для..."
Отправлено arisu , 03-Июл-12 16:33 
о, ванятка-однобитный-флоат опять феерически лажается. впрочем, это его основное занятие, уже даже как-то лениво удивляться.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 03-Июл-12 18:29 
>> почему бы и не объединить скажем картинки и флеша
> Объединить на уровне приложения или на уровне ядра ОС?
>> ENV окружение и переменные у большинства процессов схожи

Вано, мы тут про дупликаты в памяти, что там творится у юзеров, как-то пофиг.

Я почти на 101% уверен, что fopen(http://www.opennet.me/opennet2.gif),
на каждой вкладке в браузере будут абсолютно одинаковые в памяти.  


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 05-Июл-12 14:59 
>>Я почти на 101% уверен, что fopen(http://www.opennet.me/opennet2.gif),

на каждой вкладке в браузере будут абсолютно одинаковые в памяти.

Я тоже в этом уверен. Но взял и собрал 3.4 с uksm. К сожалению, хром и нетбинс жрут столько же, сколько и без uksm.

➜  /sys/kernel/mm/uksm  
$ cat pages_shared pages_unshared                                                                  
183
35709


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 06-Июл-12 03:20 
>>>Я почти на 101% уверен, что fopen(http://www.opennet.me/opennet2.gif),
> Я тоже в этом уверен. Но взял и собрал 3.4 с uksm.
> К сожалению, хром и нетбинс жрут столько же, сколько и без uksm.
> ➜  /sys/kernel/mm/uksm
> $ cat pages_shared pages_unshared
> 183
> 35709

Ну да, халявы не вышло...
scanned: 3015055
unshared: 107876
shared: 2318

КПД 4.65%, что в два раза меньше паравоза, но
в два раза больше статистической погрешности.
Тогда можно смело говорить о 2% профите :)

Но думаю для софта, который юзает HUGE_PAGES, 2318 2-мегабайтных страниц это неплохо.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Рыба , 03-Июл-12 16:31 
>># ps -eLf | grep chromium | wc -l
>>51
>>
>>51 тред - это открыто 10 вкладок, почему бы и не объединить скажем картинки и флеша.  
>>Сотрудник, у которого в браузере открыто больше 5 вкладок,
>>можно смело считать неквалифицированным. Помимо отсутствия
>>должностных профессиональных навыков, вы ещё тратите время
>>и соответственно деньги организации на поиск данных не
>>достающих в вашей квалификации.

павлин такой павлин..
xD

зы:
если кто пропустил корку: http://www.opennet.me/opennews/art.shtml?num=34200#64


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 03-Июл-12 18:16 
> павлин такой павлин..

Выдахай бобёр, для таких как вы и открыл 10 вкладок.  


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 02:30 
> Дистростроители надеюсь не будут включать это в ядро для десктопных дистров.

А чему противоречит желание запустить пару виртуалок на десктопе? Другое дело что по дефолту оно не должно нагло себя вести и все клинить.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 03-Июл-12 04:11 
Кстати, вот дедупантибаян
http://www.opennet.me/prog/info/1743.shtml
http://www.complang.tuwien.ac.at/ulrich/mergemem/

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ян Злобин , 03-Июл-12 07:22 
Вообще-то, подобные технологии уже давно используются на IBM-овских мейнфреймах.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 03-Июл-12 13:38 
> Вообще-то, подобные технологии уже давно используются на IBM-овских мейнфреймах.

на power системах эта фича запилена в прошлом году. а в каком виде она на зетах используется?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ян Злобин , 03-Июл-12 13:57 
> на power системах эта фича запилена в прошлом году. а в каком
> виде она на зетах используется?

Одна и та же программа, например, в двух местах памяти не хранится.  Независимо от количества пользователей.  Обратный пример - запуск, скажем, MS Word несколькими пользователями на виндовозном терминальном сервере.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 03-Июл-12 14:09 
>> на power системах эта фича запилена в прошлом году. а в каком
>> виде она на зетах используется?
> Одна и та же программа, например, в двух местах памяти не хранится.
>  Независимо от количества пользователей.  Обратный пример - запуск, скажем,
> MS Word несколькими пользователями на виндовозном терминальном сервере.

что использовать чтобы огурцы ложкой банка майонеза.

мы вообще об одном и том же говорим? я про дедупликацию одинаковых страниц памяти, а вы про что?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ян Злобин , 03-Июл-12 14:39 
> что использовать чтобы огурцы ложкой банка майонеза.
> мы вообще об одном и том же говорим? я про дедупликацию одинаковых
> страниц памяти, а вы про что?

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


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 03-Июл-12 14:44 
>> что использовать чтобы огурцы ложкой банка майонеза.
>> мы вообще об одном и том же говорим? я про дедупликацию одинаковых
>> страниц памяти, а вы про что?
> Про то же.  Примеры - частный случай, приближённый к привычным реалиям.
>  Эта идея может работать как на уровне страниц памяти, так
> и на уровне использования общих компонентов.

ой, не морочьте голову. на зетах где-то применяется дедупликация страничек памяти или нет? "идея может работать" - это к Ване, он там вон рассуждает об однобайтовом float. я тупой эксплуатационщик, мне конкретика интересна.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Ян Злобин , 03-Июл-12 15:18 
> ой, не морочьте голову. на зетах где-то применяется дедупликация страничек памяти или
> нет? "идея может работать" - это к Ване, он там вон
> рассуждает об однобайтовом float. я тупой эксплуатационщик, мне конкретика интересна.

Гугль в помощь, сын мой.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Михрютка , 03-Июл-12 16:00 
>> ой, не морочьте голову. на зетах где-то применяется дедупликация страничек памяти или
>> нет? "идея может работать" - это к Ване, он там вон
>> рассуждает об однобайтовом float. я тупой эксплуатационщик, мне конкретика интересна.
> Гугль в помощь, сын мой.

о как интересно. а ссылочкой в гугль меня не ткнете, а? ну или на инфоцентер, чтоб далеко не ходить? уважьте старика, сделайте одолжение?


"Проект по реализации системы дедупликации памяти для..."
Отправлено arisu , 03-Июл-12 16:38 
> к Ване, он там вон рассуждает об однобайтовом float

однобитном, однобитном. однобайтовый хоть какой-то смысл иметь может.


"Проект по реализации системы дедупликации памяти для..."
Отправлено pavlinux , 03-Июл-12 18:21 
>> к Ване, он там вон рассуждает об однобайтовом float
> однобитном, однобитном. однобайтовый хоть какой-то смысл иметь может.

float ваще жиды придумали, что при разделе меньше делится,
а отрицательные и комплексные, ваще адский сотона.


"Проект по реализации системы дедупликации памяти для..."
Отправлено Аноним , 05-Июл-12 01:57 
> а отрицательные и комплексные, ваще адский сотона.

А как насчет пространств с более чем 3+1 измерений? Это видимо вообще инопланетяне свои технологии притащили :)


"Проект по реализации системы дедупликации памяти для..."
Отправлено pavlinux , 06-Июл-12 03:15 
Это хрен знает, зато я знаю кто придумал евклидово, псевдоевклидово и пространство Минковского, - Евклид, Псевдоевклид и Минковский :)

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено ua9oas , 03-Июл-12 15:38 
в других ОС такое могут внедрить?

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено pavlinux , 03-Июл-12 18:34 
> в других ОС такое могут внедрить?

Ждите скоро в венде, они уже полядра линух туда перетащили.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 03-Июл-12 23:13 
кто такая полядра?

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Tzong , 04-Июл-12 02:24 
Догоняем вмварь — молодцом!

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 04-Июл-12 06:06 
жаль такой няшки на FreeBSD нету

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 05-Июл-12 02:09 
> жаль такой няшки на FreeBSD нету

Там для начала и виртуализации типа KVM где это наиболее актуально - нет. Как впрочем и кучи других вкусных плюшек.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено nagual , 04-Июл-12 14:36 
>жаль такой няшки на FreeBSD нету

Оно там надо как в бане лыжи.
Это есть в vmware. Конешно под виндой где нет COW оно еще более менее при условии чо виртуалок много и они нихера не делают, а в системах с COW толку будет голяк, только лишняя нагрузка на процессор. Страшно пдумать к каким лагам сие щастье приведет в высоконагруженной системе.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Аноним , 05-Июл-12 02:12 
> Оно там надо как в бане лыжи.

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


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено nagual , 05-Июл-12 10:04 
>> Оно там надо как в бане лыжи.
> Действительно, если у вас нет штанов то и порвать или испачкать их
> вы уж точно не сможете. В фре натурально нет поддержки виртуализаторов.
> Ну и наиболее выигрышный юзкейс такой технологии соответственно тоже в пролете.

С точки зрения экономии ресурсов, а главный ресурс это МОЁ ВРЕМЯ джаил рулит и там где админы фри развернут и запустят приложение, всякие тупые олени сначала поставят свои ОС потом начнут их настраивать ... идиоты слов нет:-))


"Проект по реализации системы дедупликации памяти для..."
Отправлено arisu , 05-Июл-12 19:07 
понимаешь… как бы тебе это сказать, малыш, чтобы ты понял… «экономия времени» — это далеко не всегда «а я сейчас за пять минут сделаю, а вы уже два часа возитесь!»

ты если эту часть понял, скажи, пойдём дальше.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено nagual , 06-Июл-12 23:41 
>> Оно там надо как в бане лыжи.
> Действительно, если у вас нет штанов то и порвать или испачкать их
> вы уж точно не сможете. В фре натурально нет поддержки виртуализаторов.
> Ну и наиболее выигрышный юзкейс такой технологии соответственно тоже в пролете.

Знаете если вы обосрались ... самое время доказывать неолбходимость ношения штанов :-))) вспоминается известный жест Богдана Титомира: - "Делай как я..." :-))


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Forth , 05-Июл-12 00:11 
Оригинальный KSM тоже неплох. У меня на продакшен кластере виртуалок не много, но KSM из 10 гигов ушедших на виртуалки, почти гиг сэкономил.

"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено nagual , 06-Июл-12 13:49 
> Оригинальный KSM тоже неплох. У меня на продакшен кластере виртуалок не много,
> но KSM из 10 гигов ушедших на виртуалки, почти гиг сэкономил.

Я сталкивался с кучей вирт хостингов больных одной и той же болезнью - стоит дать нагрузку все накрывается нахер ... Экономят  ? Да ?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Forth , 06-Июл-12 14:49 
>> Оригинальный KSM тоже неплох. У меня на продакшен кластере виртуалок не много,
>> но KSM из 10 гигов ушедших на виртуалки, почти гиг сэкономил.
> Я сталкивался с кучей вирт хостингов больных одной и той же болезнью
> - стоит дать нагрузку все накрывается нахер ... Экономят  ?
> Да ?

Да памяти-то хватает, дисковой производительности нет.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено nagual , 06-Июл-12 15:13 
>>> Оригинальный KSM тоже неплох. У меня на продакшен кластере виртуалок не много,
>>> но KSM из 10 гигов ушедших на виртуалки, почти гиг сэкономил.
>> Я сталкивался с кучей вирт хостингов больных одной и той же болезнью
>> - стоит дать нагрузку все накрывается нахер ... Экономят  ?
>> Да ?
> Да памяти-то хватает, дисковой производительности нет.

Да шож тогда ссш так тормозит то ? :-))


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 06-Июл-12 22:17 
>>> вирт хостингов
>>> дать нагрузку
> Да шож тогда ссш так тормозит то ? :-))

ССЖБ, вестимо.

>>> Экономный


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено nagual , 06-Июл-12 23:34 
>>>> вирт хостингов
>>>> дать нагрузку
>> Да шож тогда ссш так тормозит то ? :-))
> ССЖБ, вестимо.
>>>> Экономный

Как не крути а с точки зрения клиента виртулы это гавно ... тормозили тормозят и тормозить будут ...


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 07-Июл-12 01:43 
> Как не крути а с точки зрения клиента виртулы это гавно ...
> тормозили тормозят и тормозить будут ...

Клиент клиенту рознь, да и руки не у всех в коленях сгибаются.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено nagual , 07-Июл-12 10:57 
>> Как не крути а с точки зрения клиента виртулы это гавно ...
>> тормозили тормозят и тормозить будут ...
> Клиент клиенту рознь, да и руки не у всех в коленях сгибаются.

Учитывая что почти все хостинги с виртуалами сделаны под linux одмино там действительно руко-колени ...


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 07-Июл-12 14:11 
> одмино там действительно руко-колени ...

Я про Ваши, милейший.  Потому как специалисты понимают разницу shared, vps, vds, dedicated и дальше вширь -- вследствие чего и не пытаются от хостинга за пять копеек ожидать нагрузочной способности на пять рублей.

Сам себе жадный буратино.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено nagual , 07-Июл-12 23:37 
>> одмино там действительно руко-колени ...
> Я про Ваши, милейший.  Потому как специалисты понимают разницу shared, vps,
> vds, dedicated и дальше вширь -- вследствие чего и не пытаются
> от хостинга за пять копеек ожидать нагрузочной способности на пять рублей.
> Сам себе жадный буратино.

Встречный вопрос для особенно тугих - а ссш всегда должен работать или с перебоями ?


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено Michael Shigorin , 07-Июл-12 23:51 
> Встречный вопрос для особенно тугих

От перебоев? ;-)

> - а ссш всегда должен работать

У меня -- да (и на всякий случай присматривает monit).  А вообще может быть по-разному.

> или с перебоями ?

Работа с перебоями, недорослями, скрипткиддями в обязанности sshd может не входить.

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


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено nagual , 07-Июл-12 23:54 
> Хоть бы озвучили свою проблему, на которую ссылались, и заодно поставщика таких
> виртуалок да использованный тарифный план.  Так ведь гораздо понятней --
> действительно у него всё плохо или же Вы лично не готовы
> выкатить что угодно на фре за такие деньги.

Месье учится на хакера и уже научился печатать без запятых ? еще чуть чуть и научится без пробелов? :-))



"Проект по реализации системы дедупликации памяти для..."
Отправлено arisu , 07-Июл-12 23:57 
эталонный слив. молодчинка, просто живая иллюстрация.

"Проект по реализации системы дедупликации памяти для..."
Отправлено nagual , 08-Июл-12 00:03 
> эталонный слив. молодчинка, просто живая иллюстрация.

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


"*sigh*"
Отправлено Michael Shigorin , 08-Июл-12 00:37 
> Месье учится на хакера и уже научился печатать без запятых ?

Печатает пишмашинка, я набираю текст.  Обычно после этого корректору работы не остаётся.

> еще чуть чуть и научится без пробелов? :-))

Если крыть нечем, давайте просто потрём субтред от #243 как бессмысленные выкрики.  Иначе будьте добры, найдите силы говорить предметно и только затем браться обобщать.


"Проект по реализации системы дедупликации памяти для ядра Li..."
Отправлено DevZone , 08-Июл-12 06:32 
жду 100 лет нативного Xen Dom0 на фрю