Про оптимизации
Когда я был маленький, а деревья были большие я жил в мире где мощность железа с каждым годом росла в два раза, и это было честный рост за счет увеличения количества транзисторов на кристале. А сегодня физически невозможно увеличивать производительность без разных трюков.
Разные устройства, которые есть в ПК, активно используют хитрые и не очень оптимизации для того, чтобы показать более красивые цифры в утилитах производительности.
Думаю, все слышали про конвейер процессора, кэши и другие оптимизации которые при определенных обстоятельствах помогают сделать работу CPU быстрее.
Но это не единственный подобный случай. Например, SSD накопители чтобы увеличить емкость хранения стали использовать все больше битов на ячейку памяти (SLC vs QLC). Но раз битов больше, то скорость чтения записи меньше, чтобы это компенсировать производитель стал часть диска отводить под кэш, где используются быстрые SLC ячейки, а потом постепенно раскидываются в более медленные QLC.
При этом ресурс диска с QLC намного меньше чем ресурс SLC. Получается что улучшая одно, мы неминуемо ухудшаем другое. И не имя возможности наращивать количество ячеек, приходится наращивать сложность оптимизаций.
Но если копнуть еще глубже, то многие вещи делаются условно, и те же QLC ячейки можно заставить работать в SLC режиме.
Получается, что без оптимизаций уже нельзя наращивать производительность и нужно что-то принципиально другое для следующего витка эволюции (например, квантовые компьютеры), а с оптимизациями мы с каждым годом получаем все более сложную и менее управляемую инфраструктуру.
Надежность падает, сложность растет, а разруливать все должны инженеры - вот такой он реальный мир.
SOER | PRO | Boosty
Когда я был маленький, а деревья были большие я жил в мире где мощность железа с каждым годом росла в два раза, и это было честный рост за счет увеличения количества транзисторов на кристале. А сегодня физически невозможно увеличивать производительность без разных трюков.
Разные устройства, которые есть в ПК, активно используют хитрые и не очень оптимизации для того, чтобы показать более красивые цифры в утилитах производительности.
Думаю, все слышали про конвейер процессора, кэши и другие оптимизации которые при определенных обстоятельствах помогают сделать работу CPU быстрее.
Но это не единственный подобный случай. Например, SSD накопители чтобы увеличить емкость хранения стали использовать все больше битов на ячейку памяти (SLC vs QLC). Но раз битов больше, то скорость чтения записи меньше, чтобы это компенсировать производитель стал часть диска отводить под кэш, где используются быстрые SLC ячейки, а потом постепенно раскидываются в более медленные QLC.
При этом ресурс диска с QLC намного меньше чем ресурс SLC. Получается что улучшая одно, мы неминуемо ухудшаем другое. И не имя возможности наращивать количество ячеек, приходится наращивать сложность оптимизаций.
Но если копнуть еще глубже, то многие вещи делаются условно, и те же QLC ячейки можно заставить работать в SLC режиме.
Получается, что без оптимизаций уже нельзя наращивать производительность и нужно что-то принципиально другое для следующего витка эволюции (например, квантовые компьютеры), а с оптимизациями мы с каждым годом получаем все более сложную и менее управляемую инфраструктуру.
Надежность падает, сложность растет, а разруливать все должны инженеры - вот такой он реальный мир.
SOER | PRO | Boosty