Например у меня в debian Multi-Gen LRU по-умолчанию отключена, по-умолчанию zram не ставится. А то и другое нужно на линуксе.
Когда ставишь систему нужно просто включать zram и настраивать LRU. zram (оно как своп, но не совсем своп, точнее совсем не своп) где-то в половину RAM (настрока zram описана тут - https://wiki.debian.org/ZRam) /sys/kernel/mm/lru_gen/enabled - тут должна быть 7 /sys/kernel/mm/lru_gen/min_ttl_ms - тут должна быть 1000
mglru в ядре проверяется с помощью
grep -Ria CONFIG_LRU_GEN /boot/config-блаблабла
Если поддерживается, пишете сервис (если что я прям чуть ли не с официального примера достал)
После чего у вас в системе проблем быть не должно.
Zram + mglru решает все проблемы
P.S. важное дополнение, в винде эти механизмы просто из коробки стоят и можете сами проверить по наличию процесса 'memory compression'/'сжатие памяти'. Ненастроенный линукс - гораздо хуже винды. :-)
Не, ssh это понятно. Для raspberry и прочего я его часто использую. В Windows по сравнению с Linux есть интересная особенность ты можешь подключиться к той же локальной сессии удаленно, а потом снова локально. В Linux когда я настраивался оказалось есть ограничение systemd которое так не позволяет сделать (чтобы сессия пользователя была одна и та же для удаленного и для локального подключения и при этом начать эту сессию можно было как локально так и удаленно. Вот все эти условия воссоздать на текущем debian linux нельзя, а я не настолько ебанутый чтобы ради такого функционала выбирать другой дистрибутив). Там необходимы прям сильные танцы с бубнами для вот таких 'офисных' удаленных подключений. В качестве альтернативы мне удобнее под linux поднять отдельную сессию VNC для удаленного подключения виртуальном экране и к нему подключаться. Скажем так, что это неприятно но не так смертельно как описывает аффтар )
Такой жирный наброс. Я использую два ноутбука. Один на Windows 11 другой на Debian. И тот и другой работают хорошо. Единственное неудобство Linux по сравнению с Windows не такой удобный удаленный рабочий стол - нельзя к примеру поставить Linux ноут, начать на нем работу, потом взять Windows ноут и подключиться к Linux ноуту без танцев с бубнами. А вот на винде можно начать работу, потом с линуксового ноута к нему подключиться и поработать на нем удаленно. Но такой сценарий редко нужен (в основном связан с тем что мне лень ардуинки отключать от линукс ноута).
В целом я бы сказал что я прям не замечал каких-то раздражающих вещей в обеих системах
Go был придуман Google с целью УДЕШЕВЛЕНИЯ разработки. Чтобы можно было писать простой код усилиями тысяч индусов
Go был положительно встречен всеми потому что в момент его появления писать кровавый энтерпрайз на линуксе банально было нечем. Разработка на C/C++ идет слишком медленно, а джава была монстрообразна, а C# жил на windows платформе
В Россию Go пришел как дань моды и у нас не получилось так что Go удешевляет разработку, наоборот, где требуется 1-2 Java/C# разработчика разработчиков Go для аналогичной системы нужно в 1.5-3 раза больше.
Сейчас есть платформонезависимые экосистемы Rust, Java+Kotlin, C#/.NET каждая из которых стала лучше Go, но Go продолжает по инерции использоваться во многих проектах
Что ожидаю лично я. Поскольку Go изначально создавался с целью удешевления разработки то на нем будут писать ИИ-агенты и LLM. Он максимально простой и идеально впишется в новый мир разработки с применением ИИ. Что-то не нравится - ИИ перепишет говнокод на Go на другой говнокод который лучше и никакие индусы не нужны
Автор упустил всего одну вещь - наличие RISC ядра внутри процессоров Intel и наличие конвертации CISC команд в RISC. А следующее уже просто конкретные оптимизации конкретного процессора. После того как уперлись в физическую невозможность увеличивать частоту начали увеличивать размер кремния и фичи которые ответственны за трансляцию CISC->RISC. Уже много лет оптимизации строятся за счёт трасляции x86 команд в микроинструкции выполняемые внутри процессора. У интела каждые 4 года появляется новая микроархитектура с дополнительными улучшениями и удивительно что он это только недавно заметил. Судя по патенту прошло уже 2+ цикла, т.е. на рынке должно быть как минимум 4 поколения процессоров (разных по архитектуре и техпроцессу) где этот функционал реализован
Помню стажировался лет 15 назад в Intel Российском. Непонятно что вас удивляет. 1. То что команды выполняются параллельно? Ну да выполняются начиная с архитектуры Pentium. С тех пор количество "магии" и оптимизаций в микроархитектуре только выросло. Современные чипы CISC имеют внутри RISC-ядра и когда команды транслируются, они еще и оптимизируются. Независимые команды исполняются параллельно, несколько подряд идущих команд могут группироваться. Регистров в процессоре на самом деле сильно больше чем тех что вы видите в ассемблере. rax,rbx регистры - это лишь обозначение ассемблера, на самом деле их внутри сильно больше и процессор способен с каждым из них проводить операции независимо. 2. Каждый процессор имеет свои определенные особенности. Компилятор Intel и их библиотеки имеет оптимизированные версии распространенных функций для каждой микроархитектуры и особенностей кэша(!). Даже простое копирование будет по-разному выполнено на разных архитектурах. 3. Использовать VTune или аналогичный профайлер обязательно начиная с появления технологии Hyper Threading. Внезапно даже включая и выключая HT код может начать вести себя по-разному даже на одном и том же процессоре (потому что HT это неполноценная многоядерность).
Немного подумав я даже сформулировал философские вопросы которые рождаются в теории пульсирующей Вселенной. 1. Была ли в прошлых циклах жизнь? 2. Будет ли в будущих циклах жизнь? 3. Если в прошлых циклах была жизнь, то пережила ли она сжатие? 4. Если в прошлых циклах была жизнь и она не пережила сжатие, то смогла ли она оставить послание и сможем ли мы в свою очередь оставить читаемое в астрономических масштабах послание. Послание должно передавать информацию между фазами сжатия и быть читаемо хотя бы цивилизацией следующего цикла. 5. И только тут вопрос - сможем ли мы пережить сжатие.
Ну и вариант, что космологические аномалии видимые нами являются результатом работы устройства/устройств блокирущего доступ других цивилизаций в наш участок космоса тоже не следует исключать. "Мертвая зона" большая чем продолжительность жизни любого живого индивидуума во Вселенной куда более надежный заслон чем любые законы и условности. В таком случае мы вообще до момента нахождения такого устройства, мы ничего не можем сказать об устройстве Вселенной, но по идее должны иметь возможность такое устройство найти.
Интересная статья. Но у такой теории должно быть еще одно предсказание: если есть циклы, то должны быть цивилизации прошлых циклов. Т.е. они либо должны пережить цикл, либо оставить читаемые послания для цивилизаций следующих циклов (что логично после понимания цикличности).
Другой более фантастический вариант (в рамках концепции космического зоопарка) Наблюдаемые искажения могут быть вызваны защитным устройством оставленным сверхцивилизацией, чтобы закрыть Землю от посягательств других цивилизаций. В этом случае это устройство должно находиться в пределах досягаемости ракетного принципа движения
Про мак не скажу, не использую, но в линуксе добавление единички поверх количества логических(а nprocесли у тебя HyperThreading возвращает количество ядер умноженное на два) процессоров чаще всего помогает чтобы быстро работало на виртуальных машинах в хостинге.
Собственно у тебя есть два три варианта как распараллелить компиляцию: 1. Минимальное по CPU: количество джоб равно количеству процессоров - меньше делать не стоит по причине того что все что меньше будет работать медленее 2. Максимальное по CPU: количество джоб равно количеству процессоров умноженному на 2 - больше делать не стоит по причине того что ты точно не знаешь какие из задач компилятора требуют максимальной нагрузки на процессор, а какие на подсистему ввода вывода и большее количество джоб уже будет радикально снижать производительность. 3. Оптимальное по памяти: количество джоб равно количество RAM в гигабайтах деленное на 2 или 4 в зависимости от наличия HT.
На своём компьютере ты должен в зависимости от конфигурации самостоятельно подобрать это число (ну если ты используешь линукс постоянно). Оно у тебя будет больше того что в пункте 1, но меньше чем в пункте 2. Если у тебя число 3 меньше чем 1 - то на компьютер нужно добавить памяти.
Вот в советах всегда советуют нижнюю планку + 1 просто потому что с большой долей вероятности это будет оптимальный вариант на незнакомой конфигурации, а также для облака. На своём компе который ты постоянно используешь ты конечно же должен уже знать точное число )
P.S. Судя по всему для мака будет всегда использоваться количество физических процессоров, в то время как для линукса - логических. Это наводит на мысль что люди перепечатывают инструкции не думая )
На али же телефонные в основном такого типа. Я нигде мезониновые или slimstack на али не видел. Даже для ПЛИС не то что для квадриков :-( А вот интересно тут у дрона все разъемы одной фирмы?
Я вообще выключаю S-режимы и использую гибернацию при переноске ноутбука. Если свои ноутбуки я более менее могу настраивать, то на рабочих в явном виде прошу для себя это отключить - никаких проблем
Например у меня в debian Multi-Gen LRU по-умолчанию отключена, по-умолчанию zram не ставится. А то и другое нужно на линуксе.
Когда ставишь систему нужно просто включать zram и настраивать LRU.
zram (оно как своп, но не совсем своп, точнее совсем не своп) где-то в половину RAM (настрока zram описана тут - https://wiki.debian.org/ZRam)
/sys/kernel/mm/lru_gen/enabled - тут должна быть 7
/sys/kernel/mm/lru_gen/min_ttl_ms - тут должна быть 1000
mglru в ядре проверяется с помощью
Если поддерживается, пишете сервис (если что я прям чуть ли не с официального примера достал)
После чего у вас в системе проблем быть не должно.
Zram + mglru решает все проблемы
P.S. важное дополнение, в винде эти механизмы просто из коробки стоят и можете сами проверить по наличию процесса 'memory compression'/'сжатие памяти'. Ненастроенный линукс - гораздо хуже винды. :-)
Тот случай когда комментарий важнее чем статья ))
Не, ssh это понятно. Для raspberry и прочего я его часто использую. В Windows по сравнению с Linux есть интересная особенность ты можешь подключиться к той же локальной сессии удаленно, а потом снова локально. В Linux когда я настраивался оказалось есть ограничение systemd которое так не позволяет сделать (чтобы сессия пользователя была одна и та же для удаленного и для локального подключения и при этом начать эту сессию можно было как локально так и удаленно. Вот все эти условия воссоздать на текущем debian linux нельзя, а я не настолько ебанутый чтобы ради такого функционала выбирать другой дистрибутив). Там необходимы прям сильные танцы с бубнами для вот таких 'офисных' удаленных подключений. В качестве альтернативы мне удобнее под linux поднять отдельную сессию VNC для удаленного подключения виртуальном экране и к нему подключаться. Скажем так, что это неприятно но не так смертельно как описывает аффтар )
Такой жирный наброс. Я использую два ноутбука. Один на Windows 11 другой на Debian. И тот и другой работают хорошо. Единственное неудобство Linux по сравнению с Windows не такой удобный удаленный рабочий стол - нельзя к примеру поставить Linux ноут, начать на нем работу, потом взять Windows ноут и подключиться к Linux ноуту без танцев с бубнами. А вот на винде можно начать работу, потом с линуксового ноута к нему подключиться и поработать на нем удаленно. Но такой сценарий редко нужен (в основном связан с тем что мне лень ардуинки отключать от линукс ноута).
В целом я бы сказал что я прям не замечал каких-то раздражающих вещей в обеих системах
Как появилась ипотека 5% стразу стало понятным, что надо брать - ибо выгоднее предложения на рынке не будет.
Через полгода стало ясно что надо брать сразу на весь лимит кредита
Еще полгода нужно было чтобы подумать что брать
Взять её - ибо такая халява бывает раз в жизни потому что ипотека меньше ставки рефинансирования в любом виде выгодна.
Теперь что в ней было не так.
Лимиты. 20+ лямов слишком мало для нормального жилья в Москве, а комбинированный кредит тот же Сбер не выдавал.
У меня очень много знакомых брали ИТ-ипотеку. А те кто не брали уже имели ипотеку взятую ранее под человеческий процент
Go был придуман Google с целью УДЕШЕВЛЕНИЯ разработки. Чтобы можно было писать простой код усилиями тысяч индусов
Go был положительно встречен всеми потому что в момент его появления писать кровавый энтерпрайз на линуксе банально было нечем. Разработка на C/C++ идет слишком медленно, а джава была монстрообразна, а C# жил на windows платформе
В Россию Go пришел как дань моды и у нас не получилось так что Go удешевляет разработку, наоборот, где требуется 1-2 Java/C# разработчика разработчиков Go для аналогичной системы нужно в 1.5-3 раза больше.
Сейчас есть платформонезависимые экосистемы Rust, Java+Kotlin, C#/.NET каждая из которых стала лучше Go, но Go продолжает по инерции использоваться во многих проектах
Что ожидаю лично я. Поскольку Go изначально создавался с целью удешевления разработки то на нем будут писать ИИ-агенты и LLM. Он максимально простой и идеально впишется в новый мир разработки с применением ИИ. Что-то не нравится - ИИ перепишет говнокод на Go на другой говнокод который лучше и никакие индусы не нужны
Автор упустил всего одну вещь - наличие RISC ядра внутри процессоров Intel и наличие конвертации CISC команд в RISC. А следующее уже просто конкретные оптимизации конкретного процессора. После того как уперлись в физическую невозможность увеличивать частоту начали увеличивать размер кремния и фичи которые ответственны за трансляцию CISC->RISC. Уже много лет оптимизации строятся за счёт трасляции x86 команд в микроинструкции выполняемые внутри процессора. У интела каждые 4 года появляется новая микроархитектура с дополнительными улучшениями и удивительно что он это только недавно заметил. Судя по патенту прошло уже 2+ цикла, т.е. на рынке должно быть как минимум 4 поколения процессоров (разных по архитектуре и техпроцессу) где этот функционал реализован
out-of-order execution
register renaming
Помню стажировался лет 15 назад в Intel Российском. Непонятно что вас удивляет.
1. То что команды выполняются параллельно? Ну да выполняются начиная с архитектуры Pentium. С тех пор количество "магии" и оптимизаций в микроархитектуре только выросло. Современные чипы CISC имеют внутри RISC-ядра и когда команды транслируются, они еще и оптимизируются. Независимые команды исполняются параллельно, несколько подряд идущих команд могут группироваться. Регистров в процессоре на самом деле сильно больше чем тех что вы видите в ассемблере. rax,rbx регистры - это лишь обозначение ассемблера, на самом деле их внутри сильно больше и процессор способен с каждым из них проводить операции независимо.
2. Каждый процессор имеет свои определенные особенности. Компилятор Intel и их библиотеки имеет оптимизированные версии распространенных функций для каждой микроархитектуры и особенностей кэша(!). Даже простое копирование будет по-разному выполнено на разных архитектурах.
3. Использовать VTune или аналогичный профайлер обязательно начиная с появления технологии Hyper Threading. Внезапно даже включая и выключая HT код может начать вести себя по-разному даже на одном и том же процессоре (потому что HT это неполноценная многоядерность).
Немного подумав я даже сформулировал философские вопросы которые рождаются в теории пульсирующей Вселенной.
1. Была ли в прошлых циклах жизнь?
2. Будет ли в будущих циклах жизнь?
3. Если в прошлых циклах была жизнь, то пережила ли она сжатие?
4. Если в прошлых циклах была жизнь и она не пережила сжатие, то смогла ли она оставить послание и сможем ли мы в свою очередь оставить читаемое в астрономических масштабах послание. Послание должно передавать информацию между фазами сжатия и быть читаемо хотя бы цивилизацией следующего цикла.
5. И только тут вопрос - сможем ли мы пережить сжатие.
Ну и вариант, что космологические аномалии видимые нами являются результатом работы устройства/устройств блокирущего доступ других цивилизаций в наш участок космоса тоже не следует исключать. "Мертвая зона" большая чем продолжительность жизни любого живого индивидуума во Вселенной куда более надежный заслон чем любые законы и условности. В таком случае мы вообще до момента нахождения такого устройства, мы ничего не можем сказать об устройстве Вселенной, но по идее должны иметь возможность такое устройство найти.
Интересная статья. Но у такой теории должно быть еще одно предсказание: если есть циклы, то должны быть цивилизации прошлых циклов. Т.е. они либо должны пережить цикл, либо оставить читаемые послания для цивилизаций следующих циклов (что логично после понимания цикличности).
Другой более фантастический вариант (в рамках концепции космического зоопарка) Наблюдаемые искажения могут быть вызваны защитным устройством оставленным сверхцивилизацией, чтобы закрыть Землю от посягательств других цивилизаций. В этом случае это устройство должно находиться в пределах досягаемости ракетного принципа движения
Про мак не скажу, не использую, но в линуксе добавление единички поверх количества логических(а
nproc
если у тебя HyperThreading возвращает количество ядер умноженное на два) процессоров чаще всего помогает чтобы быстро работало на виртуальных машинах в хостинге.Собственно у тебя есть два три варианта как распараллелить компиляцию:
1. Минимальное по CPU: количество джоб равно количеству процессоров - меньше делать не стоит по причине того что все что меньше будет работать медленее
2. Максимальное по CPU: количество джоб равно количеству процессоров умноженному на 2 - больше делать не стоит по причине того что ты точно не знаешь какие из задач компилятора требуют максимальной нагрузки на процессор, а какие на подсистему ввода вывода и большее количество джоб уже будет радикально снижать производительность.
3. Оптимальное по памяти: количество джоб равно количество RAM в гигабайтах деленное на 2 или 4 в зависимости от наличия HT.
На своём компьютере ты должен в зависимости от конфигурации самостоятельно подобрать это число (ну если ты используешь линукс постоянно). Оно у тебя будет больше того что в пункте 1, но меньше чем в пункте 2. Если у тебя число 3 меньше чем 1 - то на компьютер нужно добавить памяти.
Вот в советах всегда советуют нижнюю планку + 1 просто потому что с большой долей вероятности это будет оптимальный вариант на незнакомой конфигурации, а также для облака. На своём компе который ты постоянно используешь ты конечно же должен уже знать точное число )
P.S. Судя по всему для мака будет всегда использоваться количество физических процессоров, в то время как для линукса - логических. Это наводит на мысль что люди перепечатывают инструкции не думая )
Да посмотрел похожи. А на мавике 3 уже другие делают. Там полукруглые внутри разъёмы. И судя по вариантам на сайте Панасоника это уже не панасоник.
Вообще как они их так выбирают что разные модели используют разные типы разъемов?
На али же телефонные в основном такого типа. Я нигде мезониновые или slimstack на али не видел. Даже для ПЛИС не то что для квадриков :-(
А вот интересно тут у дрона все разъемы одной фирмы?
Я вообще выключаю S-режимы и использую гибернацию при переноске ноутбука. Если свои ноутбуки я более менее могу настраивать, то на рабочих в явном виде прошу для себя это отключить - никаких проблем
А как вы опознаёте разъёмы? Вот интересно бы было это почитать
На сколько людей ради этого пришлось увеличить штат? Отдельная SRE команда?
Не надо вот так.
if (value is DateOnly)
{
writer.WriteValue(((DateOnly)value).ToString(DateFormat, CultureInfo.InvariantCulture));
У меня аж глаз задергался. Нужно if (value is DateOnly date)
R5S же есть. С 3-мя сетевыми (2.5+2.5 на LAN и 1 на WAN)
А почему бы не использовать jupyter notebook на десктопе и carnets на яблоко мобилке?
В качестве хранилища можно использовать git.