Для аллокаторов есть Boost, который вот-вот в стандарт включат, так что кроме случаев хардкорной оптимизации в программе вообще не должно быть прямой работы с malloc (тем более что в рамках плюсов все равно лучше использовать new)
Да, за большинство из этих ошибок надо отрывать много чего, однако есть тонны кода с такими ошибками, который работает и перестанет это делать будучи собранным под х64
Речь ведь не о характеристике давно уволенных кодеров, а про «что с этим делать?», имхо тоже статья лучшая из этой тематики на данный момент
Шина вообще-то обычно одна, это портов на ней несколько.
В отличие от PCIe в обычном PCI нет выделенных линий на устройства — разница примерно как между коаксиальным ethernet и звездой на витухе — тоже общая шина против более производительной комутируемой среды
Например чтобы менять режим процессора с 16-битного дефолтного (legacy mode — совместимость, фигли — в современных мейнстримовых процах до сих пор оставлена сегментная адресация, реальный режим и прочие плюшки середины прошлого века, большинство людей ими пользуются только пока отрабатывает BIOS и загрузчики) на 32 и выше — выполняется перезагрузка проца отдельно от остальной системы, это относительно быстро, но архитектурно — криво
Плюс 512 байт загрузочного сектора уже очень давно используются только для того, чтобы вытащить в память сектор побольше, который запустит уже загрузчик оси…
Или например шина ISA, которая тоже еще жива — LPT, COM и PS/2 порты на ней живут — все это пережитки прошлого, которые нафиг никому не нужны кроме разве что гиков-любителей свою железку сваять и ретроградов.
Стоит упомянуть всеми любимый IE6 — от устаревших технологий нужно отказываться в пользу более прогрессивных, не только в софте, но и в железе и в том, что между.
Вот уже который топик на эту тему — а все по-прежнему к наличию мышы цепляются, полностью игнорируя изменения касающиеся дров устройств, порядка загрузки (которая по идее сможет стать быстрее — шесть-восемь ядер современных тачек явно быстрее смогут провести аналог POST, чем одна с чехардой между 16, 32 и 64-битными режимами да пониженными частотами) и прочие возможности использовать EFI вместо моментально стартующей оси с минимально необходимой поддержкой железа (да, и мышки тоже), например чтобы тот же memtest погонять или музыку/фильмец послушать не включая машину
Но стоит учитывать, что процессор не все время работает с 100% загрузкой, когда ему нечем заняться — переходит в C2/C3 и иже с ними, из которых потом просыпаться ему около милисекунды
Все-таки в купертино не только маркетологи сидят — наверняка статистику собирали и решение как-то мотивировали
— Возможны ситуации, когда понижение частоты наооборот приведет к увеличению производительности, т.к. больше не нужно часто рывками засыпать и просыпаться
Если каждый поток ест 100% ядра (ну там — бесконечные циклы гоняет например) то выигрыша не будет, да.
Однако на высокоуровневых языках принято дергать более высокооуровневые же примитивы, а не только считать что-то, от использования потоков одновременно с кучей разного IO выирыш будет очевидный — пока один поток на своем квадратном метре ждет завершения операции, второй вполне может еще что-то поделать
Да все в норме — случайно зарелизили с багами, а любителей обновиться через пару минут после релиза, у которых gem update в кроне на каждые 5 минут стоит — пришлось спасать срочными новыми версиями…
Речь ведь не о характеристике давно уволенных кодеров, а про «что с этим делать?», имхо тоже статья лучшая из этой тематики на данный момент
В отличие от PCIe в обычном PCI нет выделенных линий на устройства — разница примерно как между коаксиальным ethernet и звездой на витухе — тоже общая шина против более производительной комутируемой среды
Плюс 512 байт загрузочного сектора уже очень давно используются только для того, чтобы вытащить в память сектор побольше, который запустит уже загрузчик оси…
Или например шина ISA, которая тоже еще жива — LPT, COM и PS/2 порты на ней живут — все это пережитки прошлого, которые нафиг никому не нужны кроме разве что гиков-любителей свою железку сваять и ретроградов.
Стоит упомянуть всеми любимый IE6 — от устаревших технологий нужно отказываться в пользу более прогрессивных, не только в софте, но и в железе и в том, что между.
Все-таки в купертино не только маркетологи сидят — наверняка статистику собирали и решение как-то мотивировали
— Возможны ситуации, когда понижение частоты наооборот приведет к увеличению производительности, т.к. больше не нужно часто рывками засыпать и просыпаться
а вообще для продакшна рельсы фризить надо, во избежание
Однако на высокоуровневых языках принято дергать более высокооуровневые же примитивы, а не только считать что-то, от использования потоков одновременно с кучей разного IO выирыш будет очевидный — пока один поток на своем квадратном метре ждет завершения операции, второй вполне может еще что-то поделать
В свое время hyper-threading так появился