Группа исследователей из Нанкинского университета (Китай) представила проект 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
Кладём в память два дублирующихся блока по 800 Мб. Оставляем свободными 100 Мб. Модифицируем один из блоков. Что будет?
Одна из страниц раздуплицируется.
UKSM дуплицировало, дуплицировало да не раздуплицировало (скороговорки современных логопедов).
Скорее дедуплицировало, дедуплицировало да не раздедуплицировало (скороговорки современных логопедов).
> Скорее дедуплицировало, дедуплицировало да не раздедуплицировало (скороговорки современных
> логопедов).Недодедуплицировало.
Нужна антинедодедупликация)
данные в памяти хранятся с разбиением на страницы, дедупликацируются данные тоже на уровне страниц.
Кровь, кишки, свопинг и OOM-киллер. Без дедупликации было бы то же самое, но на 600 Мб раньше.
>> на 600 Мб раньшеразмер страницы обычно 4К если что.
4 кб, 2 Мб, или 1 Гб на усмотрение разработчиков ОС.
4кб и 4мб под x86, 4кб и 1мб под ARM
А насколько долго будут раздедуплицироваться данные мегабайт на 500 например?
а сколько твоя память пропускает мегабайт в секунду?
> А насколько долго будут раздедуплицироваться данные мегабайт на 500 например?Если почитать новость - на современном железе будет порядка секунды. Секунда в фоне - это много или мало?
Для офисного приложения - немного. Для игры или фильма - неприятно. Для нагруженных виртуалок - тоже может быт неприятно.
> Для офисного приложения - немного. Для игры или фильма - неприятно. Для
> нагруженных виртуалок - тоже может быт неприятно.та да, игра или фильм - первейшие кандидаты на дедупликацию. особенно фильм.
>> Для офисного приложения - немного. Для игры или фильма - неприятно. Для
>> нагруженных виртуалок - тоже может быт неприятно.
> та да, игра или фильм - первейшие кандидаты на дедупликацию. особенно фильм.А чо, если во всех виртуалках вдруг захотят посмотреть один и тот же фильм - самое оно =)
Насчет игрушек - облачным игровым сервисам, возможно будет интересно, без шуток.
Тому же OnLive... хотя там винда, они в пролете.
Блин, не слушайте его. Только не фильмы.
Нисколько. Ты же новые данные откуда-то берёшь, тебе их в любом случае в память писать, вне зависимости от того, дедуплицированы они или нет.
>> Кладём в память два дублирующихся блока по 800 Мб. Оставляем свободными 100 Мб. Модифицируем один из блоков. Что будет?google copy-on-write
> Кладём в память два дублирующихся блока по 800 Мб. Оставляем свободными 100 Мб. Модифицируем один из блоков. Что будет?Когда ты будешь слать новые данные ("модифицировать один из блоков"), они уже будут записываться в новое адресное пространство. Если измененные данные в твоем примере превысят 100Мб, они будут записываться в своп, как и положено тому, когда не хватает RAM. По окончании записи изменятся ссылки на новый блок. Никаких дополнительных ресурсных затрат не произойдет. Только:
1) запись в память
2) смена ссылок.Боишься свопа? Зачем же ты такой большой и лысый пишешь 1600Мб данных в 900Мб RAM?! :)
Не не не. В основному будут дедублицироваться страницы кода. Они всегда неизменны так как запись в них запрещена.
Будет тоже самое что и без дедупликации при нехватке ОЗУ. Один блок останется в памяти, второй пойдёт в своп отчаянно свопить хардом.
Как я понял задачу 800 + 800 при 1700 мб всего.
Зато вот если блок не модифицировать, тогда даже при такой нехватке памяти, машинка будет чувствовать себя нормально, свопить не будет.
он уйдет в своп?
зачем ? он просто умрет.
не будет ли просаживания производительности за счет сброса кеша процессора? сканировать то придется память да чексуммы считать, значит, рабочие процессы будут терять свой кэш в процессоре. оно понятно, что эта штука работает в момент простоя (а не конкурентно), когда кэш уже не столь важен, но все таки.
Какие ещё нахрен контрольные суммы? Где вы этого дерьма набрались? У памяти страничная адресация, ставим каждой странице флаг "испорчена" и при каждом обращении к странице процессор (железка) вызовет исключение. Дальше смотрим что хотим сделать со страницей, если чтение данных - продолжаем, если запись и страница используется двумя козлами - значит делаем две страницы, снимаем флаг "испорчена" и продолжаем работу.И какой к чертям собачим кэш? Кэш для программирования на ЯВУ (в т.ч. Си) можно засунуть в задницу Торвальдсу, вопросами кэша теперь озабочен не программист, а компилятор. К тому же при современном количестве очередей и производительности оптимизация кэша крайне затруднена даже для монолитной ОС без приложений на ассемблере.
> вопросами кэша теперь озабочен не программист, а компиляторДа ну? Почитайте пару книг по оптимизации программ (от Intel'a например). Не знаю как для java и питонов всяких, но вот на сишечке можно очень хорошо заоптимизировать программу под кеш и логику работы процессора (предсказание условий как минимум). То что конкренты смогут повытеснять из кеша данные моей программы, это возможно. Но хотя бы будет более оптимально работать, если из кеша ее не будут вытеснять.
Предсказывать условия? Для 386/486 декодировалась всегда положительная ветвь, для первого и второго пентиумов декодировалась та ветвь, которая с момента включения процессора выполнялась чаще, с третьего пентиума декодируются целиком обе ветки, поэтому эти правила устарели.Программист может только очистить кэш, а не управлять им. Правила "управления кэшем" для первого пентиума не работают в последующих, то же самое аналогично и для остальных процессоров. Проще: неоптимизированная по работе с кэшем программа работает в общем случае быстрее, чем оптимизированная.
Если бы 8086 сказал. Тогда бы больше людей каламбур поняли.
> Если бы 8086 сказал. Тогда бы больше людей каламбур поняли.Да ваня эпично ламернулся, как обычно.
Книги читать полезно. Очень советую, чтобы ерунду не лепить.
Уже говорил: без аргументов идёте лесом.
Ну вот, например.Избавление от зависимостей по данным в последовательнсх операциях, куча вариантов оптимизаций в циклах, векторизация операций.
В конце концов, оптимизация размера и количества используемых переменных, чтобы они гарантированно кешировались.
И вообще, есть очень интересные книги например от Intel Press. Уж они-то знают о чем пишут. Там правда сишечка + асм, но вдруг осилите.
> В конце концов, оптимизация размера и количества используемых переменных, чтобы они гарантированно
> кешировались.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
Забавно.
> Забавно.а забавно не забавно, сам же понимаешь, где оказываются все "оптимизации под кеш" при запуске в виртуалке. ну то есть где-то в ~70% современных нагрузок.
Серверные приложения возможно.С другой стороны: игры, мультимедийные приложения, всякие оконные менеджеры пока что запускаются на железе.
Да и сами виртуалки пока на железе запускаются.
> С другой стороны: игры, мультимедийные приложения <...> запускаются
> на железе.как уже было сказано, первейшие кандидаты на дедупликацию.
> Да и сами виртуалки пока на железе запускаются.
верно; но нагрузка работает не на железе, а на ВМ, да еще с требованиями всяких миграций, небось
другими словами - там, где стрельнет дедупликация памяти - там нет десктопных нагрузок. и наоборот.
> Серверные приложения возможно.
> С другой стороны: игры, мультимедийные приложения, всякие оконные менеджеры пока что запускаются
> на железе.
> Да и сами виртуалки пока на железе запускаются.Вон ubisoft уже и игры на виртуалке в xen пускает: http://www.youtube.com/watch?v=Gtmwnx-k2qg
> Уже говорил: без аргументов идёте лесом.ваня, иди лесом
> Книги читать полезно. Очень советую, чтобы ерунду не лепить.это же «ванятка-однобитный-float», какие книги?
Оптимизация по кэшу в современных программах - в основном по данным а не по коду. С другой стороны - данные врят-ли будут дедуплицированы. С третьей - Китае ничего хорошего и нового не сделают - надо искать где содрали...
> С третьей - Китае ничего хорошего и нового не сделают - надо искать где содрали...Это стереотипы. Тем не менее, они перешагнули порог только сдирания и не стесняются улучшать при передирании. И правильно делают - только дебил с своей гордостью ломится в железную дверь стоящую в чистом поле. Остальным проще ее просто обойти.
> и не стесняются улучшать при передиранииПорой уж лучше бы стеснялись -- в T43 по сравнению с T41 нашёл один багфикс и три регрессии: http://freesource.info/wiki/MichaelShigorin/ThinkPadT43
> Оптимизация по кэшу в современных программах - в основном по данным а
> не по коду.Потому что код обычно оптимизирует компилятор. Что не уменьшает значения этой оптимизации.
> У памяти страничная адресация, ставим каждой странице флаг "испорчена" и при каждом
> обращении к странице процессор (железка) вызовет исключение.ну да, а еще у каждой странички есть флажок - содержание идентично вон той страничке, причем этот флажок заполняется автоматически потусторонними силами
> И какой к чертям собачим кэш? Кэш для программирования на ЯВУ (в т.ч. Си) можно засунуть
> в задницу Торвальдсу, вопросами кэша теперь озабочен не программист, а компилятор.а куда засунуть процессорный кэш который служит связующим звеном между процессором и памятью? компиляторы научились читать и обновлять содержимое памяти, не трогая кэш?
а вот в задницу, уважаемый, вы можете засунуть свою агрессию. вслед за граммар-наци вполне стоило бы появиться и этикет-наци, которые могли бы научить отдельных представителей обезьян, дорвавшихся до клавы, элементарным правилам общения в человеческом обществе.
не кормите тролля. На Ваню даже внимания обращать не стоит
> не кормите тролля. На Ваню даже внимания обращать не стоитДавай ваню дедуплицируем?
http://gownos.blogspot.com/2011/10/6.htmlПросвящайся.
И где же там как обнаружить две страницы совпадающие по содержимому? Особливо, без прочтения и сравнения их содержимого?Дело в том что ты видишь только как разделить уже дедуплицированную память на отдельные странички, а самой главной проблемы - как определить что две странички, инициализированные в разные моменты времени и в разные моменты времени имевшие разное содержимое, после энного количества операций вдруг стали одинаковыми (например, там код некой одной и той же библиотеки, которую подгрузили два разных процесса в двух разных виртуалках или даже лежит в файловом кеше) не видишь. Ты думаешь что оно как-то там само по себе определится или уже определено. Тебя, как школьника, интересует как выходит ребенок из живота мамы, совершенно не утруждая себя вопросом - а как он собственно туда попал-то?
"Сканирование ведётся в фоновом режиме, используя моменты простоя процессора"Процесс, тупо сравнивающий всех со всеми.
> Процесс, тупо сравнивающий всех со всеми.Прогрессируешь, Иван, до тебя начал доходить смысл новости, возможный подводный камень в виде поллюции кэша от этого самого процесса и каким боком тут страничная организация памяти.
Можно определить по тому факту, что обе копии были загружены из одного блока на жёстком диске. В NetBSD унифицированный дисковый кэш и менеджер страниц. Кроме того, когда грузится разделяемая библиотека, её код отображается в выделенные каждому диапазоны адресов памяти, не смотря на то что каждое приложение использует фактически один и тот же код.
> Просвящайся.Ваня подрабатывает священником?
та не, обычный евангелист
> та не, обычный евангелистЯ его рассматриваю исключительно как шута :)
>Какие ещё нахрен контрольные суммы? Где вы этого дерьма набрались? У памяти страничная адресация, ставим каждой странице флаг "испорчена" и при каждом обращении к странице процессор (железка) вызовет исключение. Дальше смотрим что хотим сделать со страницей, если чтение данных - продолжаем, если запись и страница используется двумя козлами - значит делаем две страницы, снимаем флаг "испорчена" и продолжаем работу.Это ты cow описал, а не дедупликацию. То есть противоположный процесс. =)
ЗЫ гражданин модератор, ты зря удалил камент ыыгч про однобитный float. Если не понимаешь о чем речь, спроси старших сначала.
Всё написал правильно.Про однобитный float уже писал, два вас повторю: можно ли построить на бумаге угол 0,0000000001 градуса? На тетрадном - нет, вообще - да. Можно ли создать структуру с однобитным float? В современных реализациях - нет, вообще - да.
> Можно ли создать структуру с однобитным float? В современных реализациях -
> нет, вообще - да.Иван! Примите вещества и покиньте тред.
Ладно, ладно. Я просто сомневался, ты это был или Трухин.
Похоже Вас Трухин заминусовал
> Можно ли создать структуру с однобитным float?
> float
> вообще - да.Мда, таких сказочных идиотов даже на ЛОРе нет.
Ни на каком процессоре, оперирующим битами(в том числе в составе байтов)это не возможно в принципе.
16-битный float возможен?
15-битный float возможен?
14-битный float возможен?
...
2-битный float возможен?
1-битный float возможен?Где граница после которой это становится "невозможно в принципе"? ("невозможно" пишется слитно)
Подсказки для размышлений:
- задача не имеет ограничений на точность хранимых данных
- в тип float можно записать целое число, напр. 0 или 1. И в 1 бите как раз тоже можно сохранить или 0 или 1
> 2-битный float возможен?Да, один бит на мантиссу и один на экспоненту.
> 1-битный float возможен?
Нет, плавать негде.
> Где граница после которой это становится "невозможно в принципе"?
Указана выше.
> ("невозможно" пишется слитно)
"расчёт" пишется с одной "с" (#127).
> Подсказки для размышлений:
Могу предложить другой "парадокс": если взять кучу песка и отнять одну песчинку -- что получится? Правильно, куча. На какой песчинке куча перестанет быть таковой? (либо же при обратном процессе добавления по песчинке -- когда станет кучей)
Ответ прост: свойством кучи является сыпучесть, метастабильность. А в трёхмерном пространстве это свойство появляется у четырёх частиц, три из которых положены в основание, а четвёртая расположена на нём. Поэтому три песчинки -- ещё не куча, а четыре -- уже кучка. :)
Подсказку №2 вы проигнорировали, а зря.float - это тип данных с плавающей точкой. Ни о какой мантиссе или экспоненте никто не говорил, это лишь один из вариантов хранения значения. Никто не мешает вам напр. умножить float-значение скажем на 100 млн. и сохранить как целое - почему бы и нет?
По поводу подсказки №1: ваш пример другого рода, и решается он (для обладающих высшим техническим образованием) элементарно, ибо рассматривается в ходе обучения. Опрашиваем много людей сколько песчинок по их мнению представляют кучу, получим нормальное распределение, строим график - вуаля!
> Ответ прост: свойством кучи является сыпучесть, метастабильность
Вы гуманитарий?
> Поэтому три песчинки -- ещё не куча, а четыре -- уже кучка
А это ваше частное суждение. Учитесь отличать объектив от субъектива.
> Подсказку №2 вы проигнорировали, а зря.Это такая же подсказка, как "микроскопом можно забивать гвозди -- и молотком можно забивать гвозди; следовательно, молоток является микроскопом".
> float - это тип данных с плавающей точкой. Ни о какой мантиссе
> или экспоненте никто не говорил, это лишь один из вариантов хранения
> значения.Замечательно, предъявите _плавающую_ точку в _любом_ однобитном формате записи данных. Можно оставить бит под одну точку, но не останется числа. Можно заменить число предположением, но это уже мухлёж на тему хранения недостающей информации сбоку.
> Никто не мешает вам напр. умножить float-значение скажем на 100
> млн. и сохранить как целое - почему бы и нет?Это и не будет значение с плавающей точкой, а целочисленное; плюс см. выше про мухлёж.
> По поводу подсказки №1: ваш пример другого рода, и решается он (для
> обладающих высшим техническим образованием) элементарно, ибо рассматривается
> в ходе обучения.Смотря какого -- мне вот попалось у Альтова (Альтшулера), а не в школе/лицее/универе. Неплохая книжка по ТРИЗ была, кстати.
> Опрашиваем много людей
зпт
> сколько песчинокзпт
> по их мнениюзпт
> представляют кучу, получим нормальное распределение, строим график - вуаля!И Вы с такой методикой ещё будете задавать вопросы вроде нижеследующего...
>> Ответ прост: свойством кучи является сыпучесть, метастабильность
> Вы гуманитарий?Я пишу обеими руками.
>> Поэтому три песчинки -- ещё не куча, а четыре -- уже кучка
> А это ваше частное суждение. Учитесь отличать объектив от субъектива.Это частное суждение достаточно строго обосновано, в отличие от Вашего.
> микроскопом можно забивать гвозди -- и молотком можно забивать гвозди; следовательно, молоток является микроскопомНет, но это означается что для забивания гвоздей молоток не обязателен. Также как для хранения float не обязательно хранить его именно в виде мантисса-экспонента.
> Замечательно, предъявите _плавающую_ точку в _любом_ однобитном формате записи данных
Ещё раз повторю подсказки для размышлений:
- задача не имеет ограничений на точность хранимых данных
- в тип float можно записать целое число, напр. 0 или 1. И в 1 бите как раз тоже можно сохранить или 0 или 1> Я пишу обеими руками.
Я тоже. Чем ещё померяемся? :-) Но не особо понимаю как это поможет в решении задачи.
> Это частное суждение
Т.е. субъективное по определению, хотя и может в частном случае совпадать с объективным.
> Это частное суждение достаточно строго обосновано
А это безразлично. Когда-то строго обосновывали что Земля плоская и стоит на 3 слонах.
---
Вопрос о сохранении однобитного float исключительно теоретический и практической пользы не имеет. Но именно такие вопросы напр. на собеседованиях (хотя я не с Си работаю) позволяют за короткое время многое понять о собеседнике.
>> "микроскопом можно забивать гвозди -- и молотком можно забивать гвозди;
>> следовательно, молоток является микроскопом"
> НетУже хорошо.
>> Замечательно, предъявите _плавающую_ точку в _любом_ однобитном формате записи данных
> Ещё раз повторю подсказки для размышлений:
> - задача не имеет ограничений на точность хранимых данныхРечь не о точности, а о принципиальном отличии, позволяющем называть значение таковым с плавающей запятой. Если же сводить всё к частным случаям -- то разумеется, комплексное число может заодно быть вещественным, рациональным, целым, натуральным и вообще единицей. Но не возможность записи единицы открывает возможность работы с комплексными числами, поймите наконец.
>>> Вы гуманитарий?
>> Я пишу обеими руками.
> Я тоже.Это был ответ на вопрос. Перекликается с "unsigned long letter" вот здесь: http://people.cs.und.edu/~rmarsh/CLASS/CS451/HANDOUTS/CHumor... :)
>>> это ваше частное суждение
> Т.е. субъективное по определениюРазумеется.
>> Это частное суждение достаточно строго обосновано
> А это безразлично.Жаль.
> Когда-то строго обосновывали что Земля плоская и стоит на 3 слонах.
Строгого обоснования так и не видел, хотя интересовался когда-то восточными религиями.
> Вопрос о сохранении однобитного float исключительно теоретический и практической
> пользы не имеет. Но именно такие вопросы напр. на собеседованиях (хотя я
> не с Си работаю) позволяют за короткое время многое понять о собеседнике.Причём в обе стороны.
> Если же сводить всё к частным случаям -- то разумеется, комплексное число может заодно быть вещественным, рациональным, целым, натуральным и вообще единицейНаконец то. И чего, спрашивается, шумели?
> И чего, спрашивается, шумели?Того, что берёте один частный случай (однобитовую запись) и обобщаете на float, не дав себе труда вообще понять, что есть float. Ну и до кучи возмутило мелкое напёрсточничество со ста миллионами. Объяснения постарался представить выше.
Миша, оно же не поймёт. причём тут неважно, упорное оно такое потому, что не хочет признать ошибку, или потому, что глупое. как будто ты по другим комментариям не видишь, что оно феерически некомпетентно в любой теме, на которую берётся рассуждать.
> как будто ты по другим комментариям не видишь, что оно феерически некомпетентно
> в любой теме, на которую берётся рассуждать.Ну почему, по некоторым связанным с системной частью, сотовой связью и IIRC электротехникой бывают вполне содержательные комментарии (пока не происходило схлопывания в win vs lin).
А сам упираюсь ровно ради того, чтоб человек или пояснил, или осознал. Не ради спора, ради человека.
> Ещё раз повторю подсказки для размышлений:
>- задача не имеет ограничений на точность хранимых данных
>- в тип 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 исключительно теоретический и практической пользы не имеет. Но именно такие вопросы напр. на собеседованиях (хотя я не с Си работаю) позволяют за короткое время многое понять о собеседнике.
Это точно, я, да и многие другие, поняли буквально с первых твоих сообщений, что твой моск тебя покинул.
Ваши размышления на уровне: в автобусе осталось одно свободное место, значит сесть может лишь один пассажир. А если может сесть лишь один пассажир, то это не автобус, а личный автомобиль.Тип - float, но размер типа определяет программист. Если он определил 1 бит - то и сохранено будет информации на 1 бит. Если определил 100 Гб - то будет сохранено информации на 100 Гб. Программист идиот или может просто ошибся? Возможно, но это не наше дело, т.к. вопрос теоретический: можно или нельзя.
> Ваши размышления на уровне: в автобусе осталось одно свободное место,
> значит сесть может лишь один пассажир. А если может сесть лишь один пассажир,
> то это не автобус, а личный автомобиль.Если по постановке задачи сесть может лишь один пассажир, то это не автобус.
PS: s/месть/сесть/ :)
> Тип - float, но размер типа определяет программист.
Размер -- да, но в пределах, допустимых для типа. Не получается куча из одной песчинки, свойств не хватает.
Даже не знаю, как охарактеризовать подобное заблуждение и упорное в нём пребывание. Неужели Вы в принципе неспособны различать сущности по их свойствам? Или прилипший "парадокс" настолько дорог? Ведь существуют и более практичные методики отбора кандидатов, чем "объясните чернильное пятно": http://morethancoding.com/2012/04/30/5-signs-that-you-should.../
>Замечательно, предъявите _плавающую_ точку в _любом_ однобитном формате записи данных."Ты можешь представить двухбитный float, когда и мантисса и экспонента каждая представлена одним битом,- сказал Мокурай. - Теперь покажи мне однобитный float."
Куча перестаёт быть кучей тогда, когда на подсчёт песчинок,
тратится меньше слов, чем на описание того, что такое куча.
:)
>[оверквотинг удален]
> ...
> 2-битный float возможен?
> 1-битный float возможен?
> Где граница после которой это становится "невозможно в принципе"? ("невозможно" пишется
> слитно)
> Подсказки для размышлений:
> - задача не имеет ограничений на точность хранимых данных
> - в тип float можно записать целое число, напр. 0 или 1.
> И в 1 бите как раз тоже можно сохранить или 0
> или 10-битный float возможен?
-1-битный float возможен?
-2-битный float возможен?
𝜋-битный float возможен?
-666,(6)-битный float возможен?
42*sqrt(-1) - битный float возможен?
Мне кажется мы близки к перевороту в современной науке, который наконец даст человечеству гравитационный щит и откроет портал в другие миры. Подумаешь бозон Хиггса. Что он в сравнении с однобитным float?!
Мужики вы не фкуриваете.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()
Правы, кроме п.2.Количество состояний определяется разработчиком системы и зависит от технических возможностей по разделению состояний. Так если система может разделить лишь два состояния (напр. 5 вольт и 12 вольт) - то она будет бинарной, три состояния - третичной, и т.д. Система счисления - лишь представление значения в удобной для нас форме.
И алгоритм - способ перевода системы из состояния А в состояние Б, используя имеющиеся возможности системы.
У бита в любой системе счисления будет 2 состояния, потому что бит это binary digit
> У бита в любой системе счисления будет 2 состояния, потому что бит
> это binary digit
это к чему?
> это к чему?это к тому что у действительно существовавшей вычислительной техники 1 бит мог иметь 3 состояния.
google + троичная информатика
Лолшто? Где конкретно написано(кроме опеннета и лора=) про бит, имеющий три состояния?ЗЫ Хочу выразить глюбочайшую благодарность этому ресурсу! Уже третий день подряд местные комментаторы делают мой день!
ЗЫЗЫ вру не третий, четвертый день.
Одно из определений бита звучит как "бит — это энтропия простейшей физической системы, которая может быть только в двух равновероятных состояниях".Термина для "N равновероятных состояний" нет, поэтому продолжают использовать бит, понимая что его как: "бит - это условная единица информации. (единицей может быть любое множество даже бесконечное)."
> Уже третий день подряд местные комментаторы делают мой день
С твоим уровнем интеллекта можешь взять учебник напр. по кибернетике - уржёшься! Гарантия.
ты мне бит имеющий три состояния покажи. Про однобитный float так и быть умолчим. И, пожалуйста, больше без шизофазии с претензией на матан.
> ты мне бит имеющий три состояния покажи.А в чем проблема-то? -1, 0, +1
Кстати, на эмуляторах троичная реализуется как 1, 0 и 11
>> ты мне бит имеющий три состояния покажи.
>А в чем проблема-то? -1, 0, +1Осталось подогнать это под какое-нибудь определение бита и Нобелевская премия у нас в кармане.
> Одно из определений бита звучит как "бит — это энтропия простейшей физической
> системы, которая может быть только в двух равновероятных состояниях".
> Термина для "N равновероятных состояний" нет, поэтому продолжают использовать
> бит, понимая что его как: "бит - это условная единица информации. (единицей может
> быть любое множество даже бесконечное)."Ну чуток подумать, то для N-чной системы счисления это будет звучать как:
Бит — это логарифм по основанию N, вероятности равновероятных событий
или
сумма произведений вероятности на логарифм по основанию N, вероятности при равновероятных событиях;
> [...] про бит, имеющий три состояния?Это был не бит, а трит. Состояния были +1, 0, -1 и на них гораздо разумнее ложилась человеческая математика, по воспоминаниям работавших с такими машинами.
Дело было в том, что тогда и здесь на двух ферритовых колечках получалось надёжно сохранить два или три состояния, а не полных четыре: http://ka2.ru/nauka/rumjantsev.html
>> [...] про бит, имеющий три состояния?
> Это был не бит, а трит. Состояния были +1, 0, -1
> и на них гораздо разумнее ложилась человеческая математика, по воспоминаниям работавших
> с такими машинами.
> Дело было в том, что тогда и здесь на двух ферритовых колечках
> получалось надёжно сохранить два или три состояния, а не полных четыре:
> http://ka2.ru/nauka/rumjantsev.htmlМиша, вот скажи, у тебя вроде права модератора тут. Зачем модератору вести долгую и совершенно бесполезную полемику о числе ангелов на остром конце иглы в треде про дедупликацию памяти? Настолько не о чем и не с кем поговорить, чтоль? Пичалька.
> Зачем модераторуОх, тёзка, не травите душу. С радостью бы писал просто на общих основаниях.
> Настолько не о чем и не с кем поговорить, чтоль?
Иногда ситуативно бывает и так, но в данном разе для меня это вопрос про творчество vs копирование (а-ля ЕС).
>Это был не бит, а трит.Мне обещали бит. На трит не согласен! Тритом с тремя состояниями никого не удивишь.
И вообще зря его упоминаешь, как бы у пациента не случился приступ на тему однотритового float.
>>Это был не бит, а трит.
> Мне обещали бит. На трит не согласен! Тритом с тремя состояниями никого не удивишь.В атоме водорода 1 - протон, в гелии - 2, в атоме лития - 3 протона,...
от этого атом он не перестаёт быть атомом.слова трит, кубит,... придумали как раз для таких людей, дабы оферхед не наводили.
>В атоме водорода 1 - протон, в гелии - 2, в атоме лития - 3 протона,...
>от этого атом он не перестаёт быть атомом.От этого водород не становится гелием. На бит и трит сам экстраполируешь?
>слова трит, кубит,... придумали как раз для таких людей, дабы оферхед не наводили.
Фраза подразумевает, что до этого шла речь о каких-то людях.
>>В атоме водорода 1 - протон, в гелии - 2, в атоме лития - 3 протона,...
>>от этого атом он не перестаёт быть атомом.
> От этого водород не становится гелием. На бит и трит сам экстраполируешь?Ну вот что ты пристал к системе счисления,.. комплексное тоже число,
трансцендентное тоже число, числа Кэли, квантернионы, n-числа,... - все числа.Число, в данных случаях, это минимальная единица измерения, она же операнд.
Подразумвается, что все операции подченены одним и тем же законам.Задача на развитие мозга: В регисте флагов записано 0, требуется узнать систему счислния.
Кстати, кванта и эфира не существует.
Бит интересен тем, что это минимальная из существующих единиц измерения информации. Поэтому не надо мне подсовывать всякие трансцендентные числа и говорить, что это тоже бит. Они не годятся.
И чего ты кстати пристал к системам счисления я тоже не понимаю. Биту они перпендикулярны, если не считать, что чаще всего его представляют в двоичной, потому что удобно и практично.
>>>В атоме водорода 1 - протон, в гелии - 2, в атоме лития - 3 протона,...
>>>от этого атом он не перестаёт быть атомом.
>> От этого водород не становится гелием. На бит и трит сам экстраполируешь?
> Ну вот что ты пристал к системе счисления,.. комплексное тоже число,
> трансцендентное тоже число, числа Кэли, квантернионы, n-числа,... - все числа.
> Число, в данных случаях, это минимальная единица измерения, она же операнд.
> Подразумвается, что все операции подченены одним и тем же законам.
> Задача на развитие мозга: В регисте флагов записано 0, требуется узнать систему
> счислния.
> Кстати, кванта и эфира не существует.Я заметил некоторые ... не проходили в школе систем счисления. Это потому что их выкинули из школьной программы ? или потом что они идиоты ?
> Я заметил некоторыеТвоё дело молчать и слушать. Думать тебе не велели. Шёл мимо, ну и пиздуй дальше.
> У бита в любой системе счисления будет 2 состояния, потому что бит
> это binary digitСам ты бинанари дигит, bit — немного, чуть,...
а float — буй.
> а float — буй.Give me a little bit - Дай мне немного двоичных цифр. Угу...
тебе не чисел, тебе таблеточек от ожирения.
> тебе не чисел, тебе таблеточек от ожирения.Оу, рейсхфилолог... ну тогда проведи расследование, что значило слово bit до 1900 года.
> Оу, рейсхфилолог… ну тогда проведи расследование, что значило слово bit до 1900
> года.мы живём в 19-м веке, да?
а ещё хочу поинтересоваться: ты про такие понятия, как «контекст» и «профессиональный жаргон» слышал?
а то, знаешь, слово «живот» когда-то тоже обозначало не совсем то же, что и сейчас. надеюсь, когда (если; лучше не надо, конечно) ты будешь жаловаться доктору «у меня рези в животе», он отправит тебя к психиатру — потому что «пациент малосвязно жалуется на неприятности в жизни».
>Оу, рейсхфилолог... ну тогда проведи расследование, что значило слово bit до 1900 года.Это поможет выяснить, что же такое однобитный float?
>>Оу, рейсхфилолог... ну тогда проведи расследование, что значило слово bit до 1900 года.
> Это поможет выяснить, что же такое однобитный float?А я-то думал, мы про дедупликацию в ядре.
а я о чем?
Хочу дедуплицировать a little bit однобитовых float в ядре.
> а я о чем?
> Хочу дедуплицировать a little bit однобитовых float в ядре.Для этого нужон модуль памяти на бит.
>Мужики вы не фкуриваете.Не зря же в новости сначала было написано "дудупликация памяти".
Одни невкуривают, другие(не буду показывать пальцем) не выдыхают, отсюда отсутствие взаимопонимания. =)
> 1-битный float возможен?Хорошо, допустим бит выставлен в ноль. Что означает этот флоат? Ноль? Ну, допустим.
Окей, допустим, бит выставлен в единицу. Что это означает? И где, собственно, плаваюшая точка уместилась в одном бите? :)
А что будет когда вы в 1-байтное целое захотите записать значение 999.999.999.999? Вот вам и ответ на ваш вопрос. От реализации зависит.Как пример реализации: количество_битов_дробной_части = округление_вниз(количество_битов/2); количество_битов_целой_части = количество_битов - количество_битов_дробной_части. Теперь записать число, пусть даже в 1 бит, труда не составит. И да, вместо целой и дробной части можно использовать мантиссу и экспоненту, или числитель и знаменатель натуральной дроби, или любой другой удобный вам способ.
Размерность 1 бит - крайний случай, но, тем не менее, теоретически возможный.
Опять Ванька запутался (наверно не специально).
Ты говоришь про дробные числа.
float это не само число, а одна из форм представления числа. Ну и так уж сложились обстоятельства... короче тебе не повезло: эта форма представления по определению состоит из двух независимых друг от друга частей, а значит тебе придется представить обе эти части одним битом.
В этом деле мог бы помочь бит с более чем двумя состояниями, который вы Павликом феерично изобрели, но опять увы: такого бита в этой Вселенной не существует. Какое-то сплошное невезение, ну что за глупая Вселенная такому умному Ване досталась!Ну и если в двух словах, в один бит можно записать вещественное число, но это будет не float.
> Опять Ванька запутался (наверно не специально).
> Ты говоришь про дробные числа.
> float это не само число, а одна из форм представления числа. Ну
> и так уж сложились обстоятельства... короче тебе не повезло: эта форма
> представления по определению состоит из двух независимых друг от друга частей,
> а значит тебе придется представить обе эти части одним битом.
> В этом деле мог бы помочь бит с более чем двумя состояниями,
> который вы Павликом феерично изобрели, но опять увы: такого бита в
> этой Вселенной не существует. Какое-то сплошное невезение, ну что за глупая
> Вселенная такому умному Ване досталась!Нахера вы этот бред тут пишете? У вас что xor на всю голову ?
А клоуны-то всё прибывают. =)Чем именно месье недоволен?
> А клоуны-то всё прибывают. =)
> Чем именно месье недоволен?видать, розог получил от дона Хуана, вот и ходит злой.
>> Кэш для программирования на ЯВУ (в т.ч. Си)почитайте What every programmer should know about memory. На русском уже тоже есть.
2007 г.За это время уже МНОГОЕ изменилось...
> За это время уже МНОГОЕ изменилось...Ты, дятел, козыряешь 8086. С тех пор изменилось намного больше.
Я вот до сих пор держу настолькой книгой Уильяма Стивенса TCP/IP в UNIX и прекрасно его описания работают в современных linux'ах.Не настолько все изменилось с 2007 года. Внешне - возможно, но принципиально - нет.
> 2007 г.
> За это время уже МНОГОЕ изменилось...Не настолько многое.
> Не настолько многое.Достаточно многое. Например нынче -Os может быть лучше чем -O2 и прочие развороты циклов. Потому что бОльший процент попаданий в кеш компенсирует то что циклы не развернуты и прочая. А на классическом х86 было все наоборот. Да и вообще, месиво из декодеров и пачки рискообразных блоков выполнения за ними, которые даже не обязаны точно изображать целое число х86 ядер - это очень такой своеобразный "а я тут как бы х86".
Вплоть до того что например в случае бульдозера вообще не понятно сколькоядерным его такой вообще считать :)
>можно засунуть в задницу ТорвальдсуОго, какие необычные фантазии, ай-я-яй.
Только от его жены ты отгребешь гарантированно
> Кэш для программирования на ЯВУ (в т.ч. Си)То-то даже прикладники упираются, чтоб по возможности cacheline alignment достичь, не то что ядерщики. Пришёл сам великий Ваня, что-то кропавший на коленке, и давай всех учить.
Остаётся воспользоваться коронной методикой -- подсчитать процент пользователей кода Вани среди общего их числа и немедля перейти к сокрушительным выводам.
PS: хотя вообще-то немножко стыдно так ёрничать, сам-то не системщик ни разу.
> То-то даже прикладники упираются, чтоб по возможности cacheline alignment достичь,Ну ваня решил что если он не понимает как это работает - значит это никому вообще не надо.
В системах с вытесняющей многозадачностью приложение не управляет переключением контекстов, а каждое переключение обнуляет кэш.Вчера длина линии кэша была 32 байта, сегодня 128 байт, и неоптимизированная программа под линию длиной 48 байт на современных процессорах быстрее, чем программа для Pentium I, оптимизированная для линии 32 байта.
Из всех оптимизаций по кэшу остались лишь:
- выравнивание данных минимум по 16 байт
- обращение к данным в порядке роста памяти, т.е. обращаться назад нежелательно
- хранить данные которые нужно обратывать рядом, так если есть массив структур {код, сумма} и нужно часто рассчитывать общую сумму, то нужно разбить на два массива - отдельно коды (которые для рассчёта общей суммы не нужны) и отдельно суммы, чтобы не тратить половину линии кэша на чтение кода.Все остальные оптимизации только под текущий процессор.
> В системах с вытесняющей многозадачностью приложение не управляет переключением контекстов,
> а каждое переключение обнуляет кэш.Не обязательно, хотя от холодного кеша обычно толку мало (обычно != всегда). Только вот между переключениями контекстов проходит вечность по меркам процессора. И сколько процессор успеет перелопатить данных между этими переключениями, очень сильно зависит от эффективности использования кеша.
> Вчера длина линии кэша была 32 байта, сегодня 128 байт, и неоптимизированная
> программа под линию длиной 48 байт на современных процессорах быстрее, чем
> программа для Pentium I, оптимизированная для линии 32 байта.За всю историю в процессорах Intel размер кеш-линии был 32 и 64 байта, причем 64 - во всех процессорах, вышедших за последние лет 10. За AMD не скажу, но уверен, что там сидят не идиоты, и в их процах структура кеша такая же. Так что не надо выдумывать код для сферического кеша в вакууме.
> Не обязательноНе обязательно лишь для ОС у которых все приложения в одном адресном пространстве (прощай, безопасность) и ситуаций когда приложению отдали одно ядро в монопольное использование и ОС использует разные адресные пространства памяти для разных ядер.
> вечность по меркам процессора
Обычно таймер калибруют на 100 Гц. Сколько у вас там воспроизводится фильм? Думаете за 0.01 секунды вашей "вечность" успеете?
> За всю историю в процессорах Intel размер кеш-линии
За всю историю кэшей стало аж 3 (вроде) уровня и у каждого свои линии. Вы о каком уровне так уверено рассуждаете? Или застряли во временах 486/Pentium I где уровень был лишь один?
>> вечность по меркам процессора
> Обычно таймер калибруют на 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 не уверен). Ну и запятую опять уверенно зажилили.
Тактовая частота начиная с 486 уже не связана с количеством тактов.
> Тактовая частота начиная с 486 уже не связана с количеством тактов.Тактов чего?
> Тактовая частота начиная с 486 уже не связана с количеством тактов.Нормальная такая заява. Оказывается, тактовый сигнал - не для выполнения тактов. О как.
Очень кратко: изначально тактовая частота считалась как количество "inc al" за секунду. Потом появился кэш и внутренняя и внешняя частоты процессора и кэшированный стал выполняться в 20-1000 раз быстрее, хотя прирост скорости выполнения остального кода был не очень существенным. Поэтому инженеры Интел разработали некий секретный (коммерческая тайна) алгоритм определения частоты. По сути это программа, запускаешь её - получаешь цифру - тактовую частоту. Инженеры АМД разработали свой секретный алгоритм, который давал примерно те же самые цифры. Скорости росли, и вот алгоритмы Интел и АМД стали расходиться, цифры алгоритма АМД были ниже, чем у алгоритма Интел, при сравнимой производительности приложений. Тогда АМД ввёл "+": т.е. "2800 (3200+)" означает что по методике АМД частота 2800 попугаев, но производительность процессора такая же, как у Интела с 3200. Затем пришла многоядерность и оценить производительность стало ещё сложнее: что быстрее 2 ядра по 2800 попугаев или 4 ядра по 1600 попугаев? По привычке этих попугаев продолжают называть "герцами".Технически: в процессоре есть команда RDTSC (read TSC), возвращающая некое число (TSC), о котором известно лишь что оно равномерно растёт с момента включения процессора. Количество на которое увеличилось TSC за секунду операционные системы считают тактовой частотой. Подробно - в документации по процессорам.
Сейчас от частоты отходят, заменяя её всё больше поколениями или ещё чаще архитектурами. Иногда скорости считают флопсами или другой фигнёй. Если интересно - гуглите, там много интересного.
> Поэтому инженеры Интел разработали некий секретный
> (коммерческая тайна) алгоритм определения частоты.Чушь. То, о чем вы говорите - это просто "индекс", к тактовой частоте не имеющий прямого отношения. В индексе также учитывается поколение и прочие фичи процессора.
Но частота ядра была, есть и будет в обозримом будущем, хоть и плавающая. И для каждой модели CPU частоты известны.
Как?! Вы не знаете про процессор без тактовой частоты?!
Тот самый знаменитый Ванин процессор, который оперирует однобитными float и битами с тремя состояниями.
>битами с тремя состояниями.Ваня-то Ваней, но Отечественные Разработки не трожь!
всё, хватит, сколько можно?! Надоели.
Ты тоже путаешь понятия бит и разряд?
Вам привести строки линуксового кода, рассчитывающие тактовую частоту на основании 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.
Так как нормальным людям всё вышеизложенное барахло знать в общем то и не нужно, зато нужно тупо сравнивать какой из двух процессоров быстрее, то маркетологи использовали понятие тактовой частоты (Гц, МГц, ГГц) как показатель производительности. А об этом я уже писал.
> Не обязательно лишь для ОС у которых все приложения в одном адресном
> пространстве (прощай, безопасность) и ситуаций когда приложению отдали одно ядро в
> монопольное использование и ОС использует разные адресные пространства памяти для разных
> ядер.Не путайте виртуальное адресное пространство процесса и физическое адресное пространство памяти.
>> вечность по меркам процессора
> Обычно таймер калибруют на 100 Гц. Сколько у вас там воспроизводится фильм?
> Думаете за 0.01 секунды вашей "вечность" успеете?А какие у нас нынче частоты CPU? Учитывая, что большинство инструкций выполняется за единицы тактов, а промахи мимо кеша стоят сотни тактов...
И потом, декодирование видео - плохой пример. Это слишком простая задача, на современных CPU декодирование FillHD h264 даже половины ядра не сожрет (если, конечно, задача - просмотр фильма). Зато кодирование и обработка видео и прочая числодробилка съедят столько, сколько дашь. И, как ни странно, эти приложения очень часто тюнят под кеш, SSE, многоядерность и пр. Интересно, почему...
>> За всю историю в процессорах Intel размер кеш-линии
> За всю историю кэшей стало аж 3 (вроде) уровня и у каждого
> свои линии. Вы о каком уровне так уверено рассуждаете? Или застряли
> во временах 486/Pentium I где уровень был лишь один?Я говорил про кеш последнего уровня (LLC), каким бы он ни был. Т.к. именно между ним и основной памятью разрыв наиболее существенный. И да, сейчас, как и несколько последних лет, это L3.
> Не путайте виртуальное адресное пространство процесса и физическое адресное пространство памяти.Не путаю. Переключение процессов требует перезагрузки CR3, которое приводит к очистке кэша.
> А какие у нас нынче частоты CPU? Учитывая, что большинство инструкций выполняется за единицы тактов, а промахи мимо кеша стоят сотни тактов
Логической связи не вижу. Инструкций много, но каждая из них выполняются быстро. Промахи случаются, от программиста никак не зависят. Как вы можете их сравнивать?
> очень часто тюнят под кеш
Про оптимизацию под кэш обсуждение выше.
> Т.к. именно между ним и основной памятью разрыв наиболее существенный
Пруф, разумеется, у вас имеется. А также пруф что все линии кэшей в Intel длиной только 32 и 64 байта. Я вот нашёл про 128 байтные... Упс, проговорился, проговорился... :-) Жду пруфы, сладеньким *-)
>> А какие у нас нынче частоты 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 байтные... Упс, проговорился, проговорился... :-)А теперь давайте свои пруфы, вдруг я чего не знаю.
> сладеньким *-)
С дружком своим так разговаривайте.
> Что касается кеш-линий, то пожалуйста:
> http://www.intel.com/content/www/us/en/processors/architectu.../
> Раздел 11.1, цитата:Забыл указать, что Volume 3.
> Я говорил про кеш последнего уровня (LLC), каким бы он ни был.
> Т.к. именно между ним и основной памятью разрыв наиболее существенный.
> И да, сейчас, как и несколько последних лет, это L3.Ой, а что за разрыв? По объёму, скорости и количеству операций разница с основной RAM наибольшая у L1 cache всё-таки.
> Ой, а что за разрыв? По объёму, скорости и количеству операций
> разница с основной RAM наибольшая у L1 cache всё-таки.В основную память не из L1 ходят, а из LLC. Поэтому важна разница между доступом в LLC и основную память. Навскидку точных чисел я сейчас не найду, но по памяти разница в задержках в разы, а то и на порядки. На более низких уровнях кешей разница не столь драматична.
> В основную память не из L1 ходят, а из LLC.А, всё, спасибо.
> разы, а то и на порядки. На более низких уровнях кешей разница не столь драматична.DDR3 вообще обладает хоть и приличным бандвизом, но latency у него не фонтан.
Кэш один хрен сбрасывается при переключении контекста потока, так что ничего, абсолютно ничего страшного не случится.
Отличная технология для разной электроники, где памяти много не бывает. Десктопы тоже к этой электронике относятся.Интересно, в Debian хватит смелости :) из-коробки добавить?
Смелости хватит.
Дурости — нет.
Почему дурости?KSM же есть в squeeze-backports и в wheezy
Сначала федора и убунта потестят на хомячках.
В посторонние ветки, думаю, добавят, а вот в стабильную вряд ли.
"посторонние ветки" - это какие?
> Интересно, в Debian хватит смелости :) из-коробки добавить?Во фре этого нет - значит, в дебиане оно не нужно.
Наркоманы на опеннете не нужны.
> Наркоманы на опеннете не нужны.Зато они нужны при разработке дебиана.
> Зато они нужны при разработке дебиана.И фряшечки с опенком!
> И фряшечки с опенком!Грибочки? :)
Хм... интересно это на Андроид зафигачить, авось и будет пошустрее на девайсе с 128 Mb RAM.
Только вот что-то не нашел ссылки на исходники на китайском сайте :(
Вроде нашел патчики :)
Надо попробовать, только времени чуток найду...
А на андроиде прям полно одинаковых страниц в памяти? Не будет ли этот механизм только кушать лишнее время и так несильного процессора.
> А на андроиде прям полно одинаковых страниц в памяти? Не будет ли
> этот механизм только кушать лишнее время и так несильного процессора.Так в том то и смысл uksm, что это более быстрая реализация ksm.
> Так в том то и смысл uksm, что это более быстрая реализация
> ksm.смысл в том, что это _прозрачная_ реализация ksm.
т.е. нет необходимости писать код с хинтами для ksm.
А разве echo 1 > compact_,memory не то же самое делало?
не-не, то дефрагментация памяти.
> А на андроиде прям полно одинаковых страниц в памяти? Не будет ли
> этот механизм только кушать лишнее время и так несильного процессора.А хз. Вот хочу попробовать, оценить. Вдруг будет толк.
Напишите 30 SMS-сообщений вида "Привет", "Как дела?", "ОК", "Скоро буду", не отправляя их, и посмотрите - будет ли профит.
На странице памяти с смской будет еще куча служебной информации, которая не будет повторяться. Вряд ли здесь поможет дедупликация.А вот если загрузить в браузере две одинаковые статические страницы с большими картинками, то я думаю тут можно будет поглядеть.
> Напишите 30 SMS-сообщений вида "Привет", "Как дела?", "ОК", "Скоро буду",Хорошие такие смски по 4Кб :)
правильно, где еще гонять виртуальную ферму, кроме как на андроиде. надо же чем-то все эти ядра загрузить, чо они зря простаивать-то будут :)
Любопытна тут будет вероятность коллизии в использованном хэше - что-то мне подсказывает, что при работе с ОЗУ нарваться на такое гораздо легче (много-гигабайтные быстро меняющиеся массивы). У китайцев нарыть не осилил, но по-любому "сильный" алгоритм будет плохо согласовываться со скоростью.
Короче, без побайтного CMP перед объединением указателей или чего-то подобного я бы эту шнягу использовать не рисковал.
> Короче, без побайтного CMP перед объединением указателей или чего-то подобного
> я бы эту шнягу использовать не рисковал.там страницы именно так и сравнивают. хеши не используются.
>> Короче, без побайтного CMP перед объединением указателей или чего-то подобного
>> я бы эту шнягу использовать не рисковал.
> там страницы именно так и сравнивают. хеши не используются.типичное решение - сравнивать для начала хеши, а уж при их совпадении и само содержимое. на эту тему недавно даже атака исчерпания ресурсов была.
> типичное решение - сравнивать для начала хеши, а уж при их совпадении
> и само содержимое. на эту тему недавно даже атака исчерпания ресурсов
> была.patented by vmware
>> типичное решение - сравнивать для начала хеши, а уж при их совпадении
>> и само содержимое.
> patented by vmwareВообще странно, prescreening -- давным-давно известная даже не особо skilled in art'ам техника... (сталкивался с http://www.daylight.com/dayhtml/doc/theory/theory.finger.html в одном из применений)
> там страницы именно так и сравнивают. хеши не используются.Чигоо? Для каждого блока листать всю память?! Не верю (с)
>> там страницы именно так и сравнивают. хеши не используются.
> Чигоо? Для каждого блока листать всю память?! Не верю (с)конструкция KSM находится с полпинка. в интернетах или в /usr/src/linux
проверьте сами
Подобные технологии нужны только при виртуализации на серверах. На десктопе, если цпу позволяет, сжатие памяти - само то.
А с заявлениями типа "использует более быстрый и эффективный в плане снижения нагрузки на CPU алгоритм сканирования" без нормальных оценок и тестов данная китайщина ваще идет лесом. Очередная брехня.
ггг шутники эти китайцы.http://kerneldedup.org/wp-content/themes/ilost.full/images/e...
Миллион китайцев выключили свои компьютеры на 5 секунд. А потом включили. Под действием электромагнитной индукции земная ось наклонилась еще на 0.01 градуса и таяние ледников ускорилось...
> Миллион китайцев выключили свои компьютеры на 5 секунд. А потом включили. Под
> действием электромагнитной индукции земная ось наклонилась еще на 0.01 градуса и
> таяние ледников ускорилось...Может тогда уж миллиард ?
>> Миллион китайцев выключили свои компьютеры на 5 секунд. А потом включили. Под
>> действием электромагнитной индукции земная ось наклонилась еще на 0.01 градуса и
>> таяние ледников ускорилось...
> Может тогда уж миллиард ?А еще просадка напряжения будет при одновременном включении :))
> Может тогда уж миллиард ?Миллиард китайцев ломали сервер. После того как каждый китаец по 3 раза опробовал пароль "Мао Цзэдун", сервер был вынужден согласиться что пароль действительно "Мао Цзэдун".
Шутка шуткой, а мускуль до недавнего времени и правда сдавался.
Так оно еще и лишнюю память жрет, широкую на широкую, неправильно!!!
Мне думается отказ в выделении памяти для второго блока. Так как запас должен быть явно выше чем максимальный "дедуплированный" блок.
А что, в линуксе такая не хватка памяти ?
Угу.
Типа андроидов.
Вам, ждущим щастья от мс, ещё предстоит… переполсти на линух.
> А что, в линуксе такая не хватка памяти ?Если запустить 10 виртуалок с одинаковой начинкой типа ядра и прочего - не очень умно хранить в памяти 10 копий одного и того же ядра и библиотек. По сути shared memory на новый лад.
А чё про эту фишку не сказали* 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
Мужики, мож я обкурился плацебо, но по-моему хром быстрее стал страницы грузить. :D
Если сомневаешься - проверь скорость интернета, рост, вес. Эти физические константы должны быть неизменны.
Оптимизация сомнительная,
Только когда площадка по пару тысяч серверов научных поможет уменьшить дублиикаты данных а так это безщадно рекурсия
Процессоры работают на пониженой, до 1000 MHz, CPUs Load 2-3%, где бесщадная рекурсия?
> Только когда площадка по пару тысяч серверов научныхА им-то каким местом? Понимаю, что mosix будто бы оживили и вроде как добили distributed shared memory, но... (да и неудобно управляться с горкой серверов, сейчас скорее блейды)
> Оптимизация сомнительная,Когда у вас будет 20 виртуалок с одинаковой системой но разными сервисами на них - вы по другому запоете. Если одна система будет жрать N памяти на это а другая 5 * N - какая система будет лучше? :)
Вот и уходит пингвин в отрыв еще дальше. Его открытость позволяет на нем обкатывать самые смелые фантазии под любые цели. Не ожидая пока кто-то где-то раздуплится.
> Не ожидая пока кто-то где-то раздуплится.В смысле сделает инновационный раздупликатор? :)
> В смысле сделает инновационный раздупликатор? :)Как-то так, да :). Ну а что, нужная технология в типовых хостингах и облаках с их пачкой почти одинаковых виртуалок же. И что самое смешное, конкурентам нечем ответить и вообще пока они снимутся с тормоза - пингвин их лишний раз отовсюду выпнет.
>> В смысле сделает инновационный раздупликатор? :)
> Как-то так, да :). Ну а что, нужная технология в типовых хостингах
> и облаках с их пачкой почти одинаковых виртуалок же. И что
> самое смешное, конкурентам нечем ответить и вообще пока они снимутся с
> тормоза - пингвин их лишний раз отовсюду выпнет.Дядя снимись с тормоза в вмваре это есть уже вчера :-)))
Для сервера и виртуализации это может и годное решение. Для десктопа оперативы обычно более чем достаточно и легко нарастить, а процессор отстаёт от желаемого по производительности. Так что на десктоп не нужно это переносить бездумно. Дистростроители надеюсь не будут включать это в ядро для десктопных дистров.
> Для сервера и виртуализации это может и годное решение. Для десктопа оперативы
> обычно более чем достаточно и легко нарастить, а процессор отстаёт от
> желаемого по производительности. Так что на десктоп не нужно это переносить
> бездумно. Дистростроители надеюсь не будут включать это в ядро для десктопных
> дистров.# ps -eLf | grep chromium | wc -l
5151 тред - это открыто 10 вкладок, почему бы и не объединить скажем картинки и флеша.
Во-вторых, один из основных законов админа, помимо "Работает - не трогай!", - "Памяти не бывает много!"
А админовская рабочая станция, да и десктоп программатора - это сервер, телефон, плеер,
компилятор, кластер в одном флаконе.К примеру Netbeans рожает очень много тредов. Всеми любимый console-kit-daemon,
это примерно 60 тредов :) ENV окружение и переменные у большинства процессов схожи...Так что, если эта фенька действительно работает как описано, то она будет следующей must have после AUTOGROUP.
> 51 тред - это открыто 10 вкладок, почему бы и не объединитьмультиплексирование?
у флеша нет сорцов, это конейнеры
Опять этот GermoZone вылез.
> почему бы и не объединить скажем картинки и флешаОбъединить на уровне приложения или на уровне ядра ОС?
> ENV окружение и переменные у большинства процессов схожи
Безопасность важнее скорости и экономии памяти. На примере Windows (про Линукс не знаю): в Win9x DLL грузились один единственный раз, т.е. напр. kernel32.dll была загружена единожды и использовалась всеми приложениями. В WinNT у каждого процесса изолированная область памяти и собственный набор DLL, с которыми оно может делать что угодно, хоть писать в их память. Сбой приложения в 9x мог повлечь проблемы в других приложениях, сбой приложения в NT приводил лишь к закрытию сбойного приложения.
Решение в статье работает на уровне страниц, т.е. оно понятия не имеет о хранимых данных и возможно что если напр. Блокнот и SQL-сервер вдруг создали страницы с одинаковым содержимым, то останется только одна.
> Безопасность важнее скорости и экономии памяти. На примере Windows (про Линукс не
> знаю): в Win9x DLL грузились один единственный раз, т.е. напр. kernel32.dll
> была загружена единожды и использовалась всеми приложениями. В WinNT у каждого
> процесса изолированная область памяти и собственный набор DLL, с которыми оно
> может делать что угодно, хоть писать в их память. Сбой приложения
> в 9x мог повлечь проблемы в других приложениях, сбой приложения в
> NT приводил лишь к закрытию сбойного приложения.Что-то Вы напутали. В NT-ях насколько я помню есть минимум 2 способа импортировать DLL: в память процесса (для ускорения доступа) или в шаред-режиме, когда импортируется только таблица с адресами используемых функций. При ином раскладе работа того же M$-офиса 2003 на терминальном сервере (каждому по эксплореру) на 40 юзеров жрала не 4 гига памяти (как было на моей практике, а там кроме офиса еще много чего вертели), а 10-20-30... Так вот, в моем случае память в основном ели дельфевые поделки (их модно было статически линковать).
> Решение в статье работает на уровне страниц, т.е. оно понятия не имеет
> о хранимых данных и возможно что если напр. Блокнот и SQL-сервер
> вдруг создали страницы с одинаковым содержимым, то останется только одна.Опять сморозили. При записи происходит проверка блока. Дальше объяснять?
о, ванятка-однобитный-флоат опять феерически лажается. впрочем, это его основное занятие, уже даже как-то лениво удивляться.
>> почему бы и не объединить скажем картинки и флеша
> Объединить на уровне приложения или на уровне ядра ОС?
>> ENV окружение и переменные у большинства процессов схожиВано, мы тут про дупликаты в памяти, что там творится у юзеров, как-то пофиг.
Я почти на 101% уверен, что fopen(http://www.opennet.me/opennet2.gif),
на каждой вкладке в браузере будут абсолютно одинаковые в памяти.
>>Я почти на 101% уверен, что fopen(http://www.opennet.me/opennet2.gif),на каждой вкладке в браузере будут абсолютно одинаковые в памяти.
Я тоже в этом уверен. Но взял и собрал 3.4 с uksm. К сожалению, хром и нетбинс жрут столько же, сколько и без uksm.
➜ /sys/kernel/mm/uksm
$ cat pages_shared pages_unshared
183
35709
>>>Я почти на 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-мегабайтных страниц это неплохо.
>># ps -eLf | grep chromium | wc -l
>>51
>>
>>51 тред - это открыто 10 вкладок, почему бы и не объединить скажем картинки и флеша.
>>Сотрудник, у которого в браузере открыто больше 5 вкладок,
>>можно смело считать неквалифицированным. Помимо отсутствия
>>должностных профессиональных навыков, вы ещё тратите время
>>и соответственно деньги организации на поиск данных не
>>достающих в вашей квалификации.павлин такой павлин..
xDзы:
если кто пропустил корку: http://www.opennet.me/opennews/art.shtml?num=34200#64
> павлин такой павлин..Выдахай бобёр, для таких как вы и открыл 10 вкладок.
> Дистростроители надеюсь не будут включать это в ядро для десктопных дистров.А чему противоречит желание запустить пару виртуалок на десктопе? Другое дело что по дефолту оно не должно нагло себя вести и все клинить.
Кстати, вот дедупантибаян
http://www.opennet.me/prog/info/1743.shtml
http://www.complang.tuwien.ac.at/ulrich/mergemem/
Вообще-то, подобные технологии уже давно используются на IBM-овских мейнфреймах.
> Вообще-то, подобные технологии уже давно используются на IBM-овских мейнфреймах.на power системах эта фича запилена в прошлом году. а в каком виде она на зетах используется?
> на power системах эта фича запилена в прошлом году. а в каком
> виде она на зетах используется?Одна и та же программа, например, в двух местах памяти не хранится. Независимо от количества пользователей. Обратный пример - запуск, скажем, MS Word несколькими пользователями на виндовозном терминальном сервере.
>> на power системах эта фича запилена в прошлом году. а в каком
>> виде она на зетах используется?
> Одна и та же программа, например, в двух местах памяти не хранится.
> Независимо от количества пользователей. Обратный пример - запуск, скажем,
> MS Word несколькими пользователями на виндовозном терминальном сервере.что использовать чтобы огурцы ложкой банка майонеза.
мы вообще об одном и том же говорим? я про дедупликацию одинаковых страниц памяти, а вы про что?
> что использовать чтобы огурцы ложкой банка майонеза.
> мы вообще об одном и том же говорим? я про дедупликацию одинаковых
> страниц памяти, а вы про что?Про то же. Примеры - частный случай, приближённый к привычным реалиям. Эта идея может работать как на уровне страниц памяти, так и на уровне использования общих компонентов.
>> что использовать чтобы огурцы ложкой банка майонеза.
>> мы вообще об одном и том же говорим? я про дедупликацию одинаковых
>> страниц памяти, а вы про что?
> Про то же. Примеры - частный случай, приближённый к привычным реалиям.
> Эта идея может работать как на уровне страниц памяти, так
> и на уровне использования общих компонентов.ой, не морочьте голову. на зетах где-то применяется дедупликация страничек памяти или нет? "идея может работать" - это к Ване, он там вон рассуждает об однобайтовом float. я тупой эксплуатационщик, мне конкретика интересна.
> ой, не морочьте голову. на зетах где-то применяется дедупликация страничек памяти или
> нет? "идея может работать" - это к Ване, он там вон
> рассуждает об однобайтовом float. я тупой эксплуатационщик, мне конкретика интересна.Гугль в помощь, сын мой.
>> ой, не морочьте голову. на зетах где-то применяется дедупликация страничек памяти или
>> нет? "идея может работать" - это к Ване, он там вон
>> рассуждает об однобайтовом float. я тупой эксплуатационщик, мне конкретика интересна.
> Гугль в помощь, сын мой.о как интересно. а ссылочкой в гугль меня не ткнете, а? ну или на инфоцентер, чтоб далеко не ходить? уважьте старика, сделайте одолжение?
> к Ване, он там вон рассуждает об однобайтовом floatоднобитном, однобитном. однобайтовый хоть какой-то смысл иметь может.
>> к Ване, он там вон рассуждает об однобайтовом float
> однобитном, однобитном. однобайтовый хоть какой-то смысл иметь может.float ваще жиды придумали, что при разделе меньше делится,
а отрицательные и комплексные, ваще адский сотона.
> а отрицательные и комплексные, ваще адский сотона.А как насчет пространств с более чем 3+1 измерений? Это видимо вообще инопланетяне свои технологии притащили :)
Это хрен знает, зато я знаю кто придумал евклидово, псевдоевклидово и пространство Минковского, - Евклид, Псевдоевклид и Минковский :)
в других ОС такое могут внедрить?
> в других ОС такое могут внедрить?Ждите скоро в венде, они уже полядра линух туда перетащили.
кто такая полядра?
Догоняем вмварь — молодцом!
жаль такой няшки на FreeBSD нету
> жаль такой няшки на FreeBSD нетуТам для начала и виртуализации типа KVM где это наиболее актуально - нет. Как впрочем и кучи других вкусных плюшек.
>жаль такой няшки на FreeBSD нетуОно там надо как в бане лыжи.
Это есть в vmware. Конешно под виндой где нет COW оно еще более менее при условии чо виртуалок много и они нихера не делают, а в системах с COW толку будет голяк, только лишняя нагрузка на процессор. Страшно пдумать к каким лагам сие щастье приведет в высоконагруженной системе.
> Оно там надо как в бане лыжи.Действительно, если у вас нет штанов то и порвать или испачкать их вы уж точно не сможете. В фре натурально нет поддержки виртуализаторов. Ну и наиболее выигрышный юзкейс такой технологии соответственно тоже в пролете.
>> Оно там надо как в бане лыжи.
> Действительно, если у вас нет штанов то и порвать или испачкать их
> вы уж точно не сможете. В фре натурально нет поддержки виртуализаторов.
> Ну и наиболее выигрышный юзкейс такой технологии соответственно тоже в пролете.С точки зрения экономии ресурсов, а главный ресурс это МОЁ ВРЕМЯ джаил рулит и там где админы фри развернут и запустят приложение, всякие тупые олени сначала поставят свои ОС потом начнут их настраивать ... идиоты слов нет:-))
понимаешь… как бы тебе это сказать, малыш, чтобы ты понял… «экономия времени» — это далеко не всегда «а я сейчас за пять минут сделаю, а вы уже два часа возитесь!»ты если эту часть понял, скажи, пойдём дальше.
>> Оно там надо как в бане лыжи.
> Действительно, если у вас нет штанов то и порвать или испачкать их
> вы уж точно не сможете. В фре натурально нет поддержки виртуализаторов.
> Ну и наиболее выигрышный юзкейс такой технологии соответственно тоже в пролете.Знаете если вы обосрались ... самое время доказывать неолбходимость ношения штанов :-))) вспоминается известный жест Богдана Титомира: - "Делай как я..." :-))
Оригинальный KSM тоже неплох. У меня на продакшен кластере виртуалок не много, но KSM из 10 гигов ушедших на виртуалки, почти гиг сэкономил.
> Оригинальный KSM тоже неплох. У меня на продакшен кластере виртуалок не много,
> но KSM из 10 гигов ушедших на виртуалки, почти гиг сэкономил.Я сталкивался с кучей вирт хостингов больных одной и той же болезнью - стоит дать нагрузку все накрывается нахер ... Экономят ? Да ?
>> Оригинальный KSM тоже неплох. У меня на продакшен кластере виртуалок не много,
>> но KSM из 10 гигов ушедших на виртуалки, почти гиг сэкономил.
> Я сталкивался с кучей вирт хостингов больных одной и той же болезнью
> - стоит дать нагрузку все накрывается нахер ... Экономят ?
> Да ?Да памяти-то хватает, дисковой производительности нет.
>>> Оригинальный KSM тоже неплох. У меня на продакшен кластере виртуалок не много,
>>> но KSM из 10 гигов ушедших на виртуалки, почти гиг сэкономил.
>> Я сталкивался с кучей вирт хостингов больных одной и той же болезнью
>> - стоит дать нагрузку все накрывается нахер ... Экономят ?
>> Да ?
> Да памяти-то хватает, дисковой производительности нет.Да шож тогда ссш так тормозит то ? :-))
>>> вирт хостингов
>>> дать нагрузку
> Да шож тогда ссш так тормозит то ? :-))ССЖБ, вестимо.
>>> Экономный
>>>> вирт хостингов
>>>> дать нагрузку
>> Да шож тогда ссш так тормозит то ? :-))
> ССЖБ, вестимо.
>>>> ЭкономныйКак не крути а с точки зрения клиента виртулы это гавно ... тормозили тормозят и тормозить будут ...
> Как не крути а с точки зрения клиента виртулы это гавно ...
> тормозили тормозят и тормозить будут ...Клиент клиенту рознь, да и руки не у всех в коленях сгибаются.
>> Как не крути а с точки зрения клиента виртулы это гавно ...
>> тормозили тормозят и тормозить будут ...
> Клиент клиенту рознь, да и руки не у всех в коленях сгибаются.Учитывая что почти все хостинги с виртуалами сделаны под linux одмино там действительно руко-колени ...
> одмино там действительно руко-колени ...Я про Ваши, милейший. Потому как специалисты понимают разницу shared, vps, vds, dedicated и дальше вширь -- вследствие чего и не пытаются от хостинга за пять копеек ожидать нагрузочной способности на пять рублей.
Сам себе жадный буратино.
>> одмино там действительно руко-колени ...
> Я про Ваши, милейший. Потому как специалисты понимают разницу shared, vps,
> vds, dedicated и дальше вширь -- вследствие чего и не пытаются
> от хостинга за пять копеек ожидать нагрузочной способности на пять рублей.
> Сам себе жадный буратино.Встречный вопрос для особенно тугих - а ссш всегда должен работать или с перебоями ?
> Встречный вопрос для особенно тугихОт перебоев? ;-)
> - а ссш всегда должен работать
У меня -- да (и на всякий случай присматривает monit). А вообще может быть по-разному.
> или с перебоями ?
Работа с перебоями, недорослями, скрипткиддями в обязанности sshd может не входить.
Хоть бы озвучили свою проблему, на которую ссылались, и заодно поставщика таких виртуалок да использованный тарифный план. Так ведь гораздо понятней -- действительно у него всё плохо или же Вы лично не готовы выкатить что угодно на фре за такие деньги.
> Хоть бы озвучили свою проблему, на которую ссылались, и заодно поставщика таких
> виртуалок да использованный тарифный план. Так ведь гораздо понятней --
> действительно у него всё плохо или же Вы лично не готовы
> выкатить что угодно на фре за такие деньги.Месье учится на хакера и уже научился печатать без запятых ? еще чуть чуть и научится без пробелов? :-))
эталонный слив. молодчинка, просто живая иллюстрация.
> эталонный слив. молодчинка, просто живая иллюстрация.Ну я же не виноват что у некоторых прямо поток сознания, успевай унитаз подставлять...
> Месье учится на хакера и уже научился печатать без запятых ?Печатает пишмашинка, я набираю текст. Обычно после этого корректору работы не остаётся.
> еще чуть чуть и научится без пробелов? :-))
Если крыть нечем, давайте просто потрём субтред от #243 как бессмысленные выкрики. Иначе будьте добры, найдите силы говорить предметно и только затем браться обобщать.
жду 100 лет нативного Xen Dom0 на фрю