Из Linux драйвера тож выпилили или вся статья не имеет отношения запланированному устареванию оборудования? Покупка под Винду в принципе гарантирует 4-5 лет поддержки. К ним может добавиться ещё хоть 10, но может и не добавиться, тут как повезёт.
У меня обычно открыты: несколько окон edge, 2-4 небольших проекта в pycharm, 2-4 небольших проекта в GoLand (переписываю py->go), discord, иногда neovim+gopls. Занято всегда 11.7-11.8 гигов (+-1 гиг). При этом zram пустой, так что добрых 5-7 гигов ситема может ещё впитать и не расстроить меня, как и лишние 5 гигов меня не порадуют.
Fedora 38, x86_64, 16gb ram (но часть зарезервирована: gpu, nvme)
Ну вообще хороши, сам пользуюсь, радуюсь. Но есть 3 нюанса:
По USB не всегда работает TRIM даже при поддержке UASP+TRIM на стороне переходника. У меня в линукс fstrim не работает "из коробки", но его можно заставить работать после нехитрых манипуляций, у девушки винда, на том же переходнике пробовал сделать TRIM - не работает вообще.
HMB в безбуферных nvme (сейчас их много, возможно, большинство) не работает через USB, а если и заработает - толку в нём будет мало.
Низкая фактическая скорость передачи по USB (если где-то не совсем честный 3.2gen2)
Когда вот эти 3 "берутся за ручки" - скорость сильно рискует упасть на уровень SATA SSD зацепленному по тому же USB, и, как правило, более дешевому (и SSD дешевле, и переходник).
p.s. Crucial (в отличии от WD/Samsung) пишет, что отсутствие TRIM это норм, все их SSD тестируются на предмет работы в отстувии TRIM и такой кейс поддерживается
Столько разговоров про выход из строя SSD, а они вообще как-то с практикой согласуются? Я штук 12 SSD купил, проблемы были только с одним, и то, подозреваю дело было в с совместимости с материнкой и/или Linux. При этом все, включая проблемный, и самый первый (Crucial, гигантский по меркам 2013 года, - целых 64 гига?) до сих пор работают.
Вот ходим в чужую апишку, работает она в целом норм. Но где-то каждый миллионный раз возвращает какую-то 500-ую ошибку. И мы это знаем, и они это знают, но считают это нормальным. Обычный retry вернёт валидный результат. И вот ловлю я эту ошибку, делаю retry чтобы с ней справиться. А мой пользователь, который мне деньги платит, он даже не знает что мы ходим в какую-то внешнюю апишку. И как ему справляться с этим на уровне интерфейса, и чем это лучше моего retry в обработке 500-ой на моей стороне?
NVMe M.2 от WD или Samsung на TLC "по деньгам". Что больше нравится. У Crucial/Micron, Kingston и других тож полно прекрасных SSD, но там разные модели могут нести кардинально разный опыт. Если денег совсем мало и/или нужен очень большой объём - SATA SSD тож TLC тож от WD/Samsung.
Нет. В этом большой плюс языка - он консервативный, знания не устаревают. Со времён Errors.Is/As/Wrap ничего нового не добавили, и я надеюсь, не добавят. Так через 10 лет мой нынешний код будет актуальным, а не дремучим легаси.
К Подольскому можно по-разному относиться как к человеку, но как Go программист он хорош, так что я бы не сравнивал его материал с вот этой ерундой уровня Junior --, да ещё и перекатившегося из Java/C#/PHP с любовью к худшим практикам (исключения, ORM).
Вкатышки этого не знают (т.к. и "преподаватели" курсов этого не знают), но вообще-то nil slice - полнофункциональный слайс, с len и cap равными 0. Его можно, а иногда и нужно использовать. Его вполне можно передать, а ещё append работает с ним как и с любым другим слайсом.
Говорить что map внутри - хэш таблица, это сильное упрощение. Она появилась сильно до дженериков, поэтому сделана в духе Си - куча unsafe указателей и колдунства вокруг них. Ну и да, порядок не гарантирован не из-за структуры map, а из-за того что он там явно рандомизирован. Ну кто код может прочесть - посмотрит.
Говорить что в Go нет lock-free структур данных и топить за mutex это значит полностью не понимать CSP и идиомы Go связанные с многопотоком. Ещё раз: гуглим go proverbs, читаем первую. Там будет "Don't communicate by sharing memory, share memory by communicating". Это трудно объяснять тем, кто уже впитал плохое из других языков, но я попробую. Вы пишите горутину так, чтобы она сделала своё грязное дело, потом вычитала map (ну или slice или что-то ещё) из входящего канала, записала результат своей работы, а потом передала этот map дальше в исходящий канал, следующей, точно такой же горутине. Всё. map в любой момент времени будет только в одной горутине, к ней вообще не будет конкурентного доступа. Блокировка происходит автоматически при попытке чтения из канала. Так же автоматически и снимается. Передача по каналу - zero copy, так что оверхед небольшой. Это - то зачем нужны каналы.
Ещё как бывает, хоть и понять это непросто. Legacy не просто называется этим словом. Оно буквально означает наследие, наследство. То, что осталось с каких-то времён, досталось от кого-то, кто был до. Т.е. оно очень тесно связано со врменем, его течением. Система, которую дописали сегодня утром, не может быть легаси. Достаточное время ещё не прошло. А теперь сложная часть: время это не ход стрелки часов, время - поток событий, пусть даже отдельных движений стрелки часов. Т.е. оно относительно, ведь поток событий везде разный, для всех разный. Для разных систем, написанных с использованием разных инструментов превращение в legacy происходит с разной скоростью. Взять фронт например. У js-ников каждый год новый, более прогрессивный фреймворк - проще, быстрее, удобнее, логичнее, лаконичнее. А у банковских систем на COBOL каждый год одно и тоже т.к. ни COBOL, ни процессы в бэкофисе банков могут не меняться десятилетиями. Соответственно "свеженькая" банковская система, которую для какого-нибудь швейцарского банка написали 7 лет назад вполне может быть на 100% современной и актуальной т.к. даже непонятно как её обновить.
Активация amd_pstate даёт не просто выбрать одну из 3-4 частот процессора (например 1ghz, 2ghz и 3ghz с возможностью буста), а установить вообще любую, хоть 899mhz, хоть 2345mhz. Активный же режим содержит эвристику, который находит "подходящую, достаточную для текущей нагрузки" частоту. Это помогает немного сэкономить батарею, не теряя качество "опыта использования". Например нам надо 2.2ghz для текущей нагрузки. ACPI cpufreq поставит 3.0ghz т.к. 2.0ghz мало, а pstate сделает как надо (точнее может, но его ещё настроить надо).
tsc=reliable - проблема скорее всего биоса, но проявляется преимущественно на AMD. tsc не проходит проверку на точность, ядро отключает его в пользу hpet, который, разумеется, работает как надо, но в редких задачах производительность падает на десятки процентов, иногда в разы. проверить можно в cat /sys/devices/system/clocksource/clocksource0/current_clocksource или dmesg | grep clocksource
pcie_aspm.policy=powersave - решаемая проблема тож не строго AMD, но всё равно мне пришлось устанавливать. если pci-e устройства не активируют ASPM, потроха (в первую очередь быстрые nvme диски и wifi адаптеры, но не только) жрут лишнее, дико греются, тормозят из-за тротлинга. проверить нужно ли можно так: sudo lspci -vv | grep 'ASPM.*abled;' (всё или почти всё должно быть Enabled)
Сейчас всё норм, по крайней мере для не самых новых процессоров. У меня один такой на базе Ryzen 5800u. С парой ядерных параметров при загрузке работает идеально.
Больше 15 лет назад устарело разделение на типы. Собственно тестирование это и подтвердило. Дело в том, что при поддержке на стороне железа (VT-x, AMD-V, iommu и т.д.) гости сразу работают с хостовым железом, даже если они гости гостей, вне зависимостей от уровня работы. Хотя рекламные брошюрки vmware со мной могут и не согласиться.
Ну "как работают системы поиска, рекомендаций и рекламы"? Так себе работают) По просьбе другого человека посмотрел 1 раз цену корма для собак и отложил в "Избранное". Через 2 недель удалил. Итого 0 покупок товаров для животных за 10 лет пользовния Озон. Угадайте, кому больше 20 раз предлагали купить что-то для собачек с тех пор?)
Китай раньше большую часть редкоземельных по миру поставлял, но сейчас их доля упала примерно вдвое. Их полный уход с рынка будет большой проблемой, но индустрия справится и переживёт. Зато вернуться Китай на рынок уже не сможет. А им это может пригодиться, ибо на горизонте слишком много проблем, на решение которых потребуется каждый свободный юань.
Из Linux драйвера тож выпилили или вся статья не имеет отношения запланированному устареванию оборудования? Покупка под Винду в принципе гарантирует 4-5 лет поддержки. К ним может добавиться ещё хоть 10, но может и не добавиться, тут как повезёт.
Не, тут же явно нужна отдельная фабрика для фабрик пиццы.
/s
Нет, не считаю что что-то должно свопаться.
У меня обычно открыты: несколько окон edge, 2-4 небольших проекта в pycharm, 2-4 небольших проекта в GoLand (переписываю py->go), discord, иногда neovim+gopls. Занято всегда 11.7-11.8 гигов (+-1 гиг). При этом zram пустой, так что добрых 5-7 гигов ситема может ещё впитать и не расстроить меня, как и лишние 5 гигов меня не порадуют.
Fedora 38, x86_64, 16gb ram (но часть зарезервирована: gpu, nvme)
Ну вообще хороши, сам пользуюсь, радуюсь. Но есть 3 нюанса:
По USB не всегда работает TRIM даже при поддержке UASP+TRIM на стороне переходника. У меня в линукс fstrim не работает "из коробки", но его можно заставить работать после нехитрых манипуляций, у девушки винда, на том же переходнике пробовал сделать TRIM - не работает вообще.
HMB в безбуферных nvme (сейчас их много, возможно, большинство) не работает через USB, а если и заработает - толку в нём будет мало.
Низкая фактическая скорость передачи по USB (если где-то не совсем честный 3.2gen2)
Когда вот эти 3 "берутся за ручки" - скорость сильно рискует упасть на уровень SATA SSD зацепленному по тому же USB, и, как правило, более дешевому (и SSD дешевле, и переходник).
p.s. Crucial (в отличии от WD/Samsung) пишет, что отсутствие TRIM это норм, все их SSD тестируются на предмет работы в отстувии TRIM и такой кейс поддерживается
Что такое насилие над ОЗУ, если не секрет? Оставление памяти пустой любой ценой ради ничего?
resolved, который работает штатным dns кэшем уже лет 8(!): ну да, ну да, пошёл я...
Столько разговоров про выход из строя SSD, а они вообще как-то с практикой согласуются? Я штук 12 SSD купил, проблемы были только с одним, и то, подозреваю дело было в с совместимости с материнкой и/или Linux. При этом все, включая проблемный, и самый первый (Crucial, гигантский по меркам 2013 года, - целых 64 гига?) до сих пор работают.
Вот ходим в чужую апишку, работает она в целом норм. Но где-то каждый миллионный раз возвращает какую-то 500-ую ошибку. И мы это знаем, и они это знают, но считают это нормальным. Обычный retry вернёт валидный результат. И вот ловлю я эту ошибку, делаю retry чтобы с ней справиться. А мой пользователь, который мне деньги платит, он даже не знает что мы ходим в какую-то внешнюю апишку. И как ему справляться с этим на уровне интерфейса, и чем это лучше моего retry в обработке 500-ой на моей стороне?
NVMe M.2 от WD или Samsung на TLC "по деньгам". Что больше нравится. У Crucial/Micron, Kingston и других тож полно прекрасных SSD, но там разные модели могут нести кардинально разный опыт. Если денег совсем мало и/или нужен очень большой объём - SATA SSD тож TLC тож от WD/Samsung.
Нет. В этом большой плюс языка - он консервативный, знания не устаревают. Со времён Errors.Is/As/Wrap ничего нового не добавили, и я надеюсь, не добавят. Так через 10 лет мой нынешний код будет актуальным, а не дремучим легаси.
К Подольскому можно по-разному относиться как к человеку, но как Go программист он хорош, так что я бы не сравнивал его материал с вот этой ерундой уровня Junior --, да ещё и перекатившегося из Java/C#/PHP с любовью к худшим практикам (исключения, ORM).
Вкатышки этого не знают (т.к. и "преподаватели" курсов этого не знают), но вообще-то nil slice - полнофункциональный слайс, с len и cap равными 0. Его можно, а иногда и нужно использовать. Его вполне можно передать, а ещё append работает с ним как и с любым другим слайсом.
Говорить что map внутри - хэш таблица, это сильное упрощение. Она появилась сильно до дженериков, поэтому сделана в духе Си - куча unsafe указателей и колдунства вокруг них. Ну и да, порядок не гарантирован не из-за структуры map, а из-за того что он там явно рандомизирован. Ну кто код может прочесть - посмотрит.
Говорить что в Go нет lock-free структур данных и топить за mutex это значит полностью не понимать CSP и идиомы Go связанные с многопотоком. Ещё раз: гуглим go proverbs, читаем первую. Там будет "Don't communicate by sharing memory, share memory by communicating". Это трудно объяснять тем, кто уже впитал плохое из других языков, но я попробую. Вы пишите горутину так, чтобы она сделала своё грязное дело, потом вычитала map (ну или slice или что-то ещё) из входящего канала, записала результат своей работы, а потом передала этот map дальше в исходящий канал, следующей, точно такой же горутине. Всё. map в любой момент времени будет только в одной горутине, к ней вообще не будет конкурентного доступа. Блокировка происходит автоматически при попытке чтения из канала. Так же автоматически и снимается. Передача по каналу - zero copy, так что оверхед небольшой. Это - то зачем нужны каналы.
Ещё как бывает, хоть и понять это непросто. Legacy не просто называется этим словом. Оно буквально означает наследие, наследство. То, что осталось с каких-то времён, досталось от кого-то, кто был до. Т.е. оно очень тесно связано со врменем, его течением. Система, которую дописали сегодня утром, не может быть легаси. Достаточное время ещё не прошло. А теперь сложная часть: время это не ход стрелки часов, время - поток событий, пусть даже отдельных движений стрелки часов. Т.е. оно относительно, ведь поток событий везде разный, для всех разный. Для разных систем, написанных с использованием разных инструментов превращение в legacy происходит с разной скоростью. Взять фронт например. У js-ников каждый год новый, более прогрессивный фреймворк - проще, быстрее, удобнее, логичнее, лаконичнее. А у банковских систем на COBOL каждый год одно и тоже т.к. ни COBOL, ни процессы в бэкофисе банков могут не меняться десятилетиями. Соответственно "свеженькая" банковская система, которую для какого-нибудь швейцарского банка написали 7 лет назад вполне может быть на 100% современной и актуальной т.к. даже непонятно как её обновить.
amd_pstate=active
Активация amd_pstate даёт не просто выбрать одну из 3-4 частот процессора (например 1ghz, 2ghz и 3ghz с возможностью буста), а установить вообще любую, хоть 899mhz, хоть 2345mhz. Активный же режим содержит эвристику, который находит "подходящую, достаточную для текущей нагрузки" частоту. Это помогает немного сэкономить батарею, не теряя качество "опыта использования". Например нам надо 2.2ghz для текущей нагрузки. ACPI cpufreq поставит 3.0ghz т.к. 2.0ghz мало, а pstate сделает как надо (точнее может, но его ещё настроить надо).
tsc=reliable - проблема скорее всего биоса, но проявляется преимущественно на AMD. tsc не проходит проверку на точность, ядро отключает его в пользу hpet, который, разумеется, работает как надо, но в редких задачах производительность падает на десятки процентов, иногда в разы. проверить можно в cat /sys/devices/system/clocksource/clocksource0/current_clocksource или dmesg | grep clocksource
pcie_aspm.policy=powersave - решаемая проблема тож не строго AMD, но всё равно мне пришлось устанавливать. если pci-e устройства не активируют ASPM, потроха (в первую очередь быстрые nvme диски и wifi адаптеры, но не только) жрут лишнее, дико греются, тормозят из-за тротлинга. проверить нужно ли можно так: sudo lspci -vv | grep 'ASPM.*abled;' (всё или почти всё должно быть Enabled)
бонус: mitigations=off куда уж без него)
Сейчас всё норм, по крайней мере для не самых новых процессоров. У меня один такой на базе Ryzen 5800u. С парой ядерных параметров при загрузке работает идеально.
Больше 15 лет назад устарело разделение на типы. Собственно тестирование это и подтвердило. Дело в том, что при поддержке на стороне железа (VT-x, AMD-V, iommu и т.д.) гости сразу работают с хостовым железом, даже если они гости гостей, вне зависимостей от уровня работы. Хотя рекламные брошюрки vmware со мной могут и не согласиться.
Эм, ну какбе идиома "кто кидает ошибку: текст ошибки" существует именно поэтому.
:x! же ?
Ну "как работают системы поиска, рекомендаций и рекламы"? Так себе работают) По просьбе другого человека посмотрел 1 раз цену корма для собак и отложил в "Избранное". Через 2 недель удалил. Итого 0 покупок товаров для животных за 10 лет пользовния Озон. Угадайте, кому больше 20 раз предлагали купить что-то для собачек с тех пор?)
Сейчас кстати довольно удачный момент для апгрейда: недавно приходилось покупать и память, и ssd - цены приятно удивили.
Уж извините, но звучит как РИА новости)
Китай раньше большую часть редкоземельных по миру поставлял, но сейчас их доля упала примерно вдвое. Их полный уход с рынка будет большой проблемой, но индустрия справится и переживёт. Зато вернуться Китай на рынок уже не сможет. А им это может пригодиться, ибо на горизонте слишком много проблем, на решение которых потребуется каждый свободный юань.