Asus Zenbook Prime UX21A, 11 дюймов, цена около 50к рублей, нормальный матовый экран с FullHD IPS матрицей, полностью металлический корпус, нормальная клавиатура, время жизни от батареи — до 10 часов в режиме чтения.
Ну и зачем этот Acer, когда есть такой Asus? :)
Опять все те же недостатки:
— жуткая клавиатура. Я печатаю вслепую, но на этих чертовых айсэрах я постоянно пропускаю буквы;
— батарея. 4 часа — это не хороший результат.
P.S. Какая на него цена? Думаю, что она на уровне Asus Zenbook UX21A, которые аналогичны по х-кам, но без глупого глянцевого тачскрина. и с большим временем автономности
Asus Zenbook — единственная нормальная линейка ультрабуков. Более того, они куда лучше, чем MacBook Air — присутствует нормальная IPS FullHD матовая матрица, в отличии от глянцевого TN 1440х900 в МВА, а для любителей поиграться есть версии с GeForce GT 620M.
Мы помним, что процессор обменивается с памятью порциями по 64 байта, которые называются КЭШ-линиями.
Более правильно было бы написать, что процессор обменивается с памятью порциями длинной в кэш линию, которая на современных Intel\AMD процессорах равна 64 байта.
Каг бэ не интелом единым :) на старых процессорах кэш линии были короче, на ARM'ах, на сколько мне известно, на А9\А15 — 32 байта. На консолях с их РРС, тоже, кажется, 32 байта
P.S. На атомах, кажется, тоже 32 байта?!
отокам всё больше требуется КЭШ линий и в силу ограниченности шины им приходится всё дольше и дольше простаивать в ожидании данных.
По сути это кэш мисс — обращение к данным, которых нет в кэше. Было бы неплохо добавить в статью.
Для того, чтобы сделать запись линейной, нужно применить классическую оптимизацию, которая называется «трансформация массива структур в структуру массивов»
На этих словах у всех любителей ООП должен случиться баттхерт, так как такая философия плохо ложится на то, чему мы обычно привыкли
З.Ы. Замечательная статья. Припоминаю только 2 источника, где все было так же толково расписано — книга Касперски по оптимизации и книга от Интел Пресс на ту же тему :) Названия лень гуглить
И остаться на всю жизнь посредственным программистом?
Не углубляться в С и заниматься программированием — это как не учиться водить и участвовать в гонках. Понимание С ведет к пониманию того, как работает процессор, память и т.д. Знание того, как работает система позволяет писать быстрый и качественный код. А так же простой, как дверь — без куч ненужных интерфейсов, фабрик и прочего.
Пример: у вас есть выбор — использовать лист или массив, скорость вставки нас не волнует — нам надо будет линейно искать элементы в одной из этих структур. Сложность поиска в обеих структурах — О(n). Аргументировано сделайте выбор структуры? Я задавал эту простую задачку «программистам» которые начинали со всяких ява\C# и они ничего не знают о памяти. Отвечали, что выберут массив, на вопрос почему ничего не могли ответить, видимо, потому что привычнее и эту структуру они выучили первой. Когда я акцентировал внимание на том, что сложность поиска в обеих структурах одинаковая, т.е. по сути ж никакой разницы в выборе нет. Они терялись.
Ну и ответ, почему же я выберу массив — все элементы расположены друг за другом, это дружественно к кэшу. Я запрашиваю один элемент, а с памяти мне придут вместе с ним несколько других, расположенных за ним. В случае с листом, в зависимости от ужасности аллокатора памяти, я буду получать постоянные кэш миссы при доступе к следующему элементу массива. И на практике скорость поиска в массиве будет значительно быстрее — опять же, в зависимости от системы. На старых тачках с ддр1-2 латентность памяти ниже, чем у ддр3, следовательно кэш миссы будут «дешевле», а значения следующего элемента придет быстрее.
Опять же, в зависимости от ужасности аллокатора памяти, реальный объем памяти выделенный под элементы листа может в разы превосходить по объему память для массива. Будет большая фрагментация памяти, что в больших системах приведет к понижению производительности всей системы в целом.
Ну и зачем этот Acer, когда есть такой Asus? :)
— жуткая клавиатура. Я печатаю вслепую, но на этих чертовых айсэрах я постоянно пропускаю буквы;
— батарея. 4 часа — это не хороший результат.
P.S. Какая на него цена? Думаю, что она на уровне Asus Zenbook UX21A, которые аналогичны по х-кам, но без глупого глянцевого тачскрина. и с большим временем автономности
З.Ы. Не тот комментарий
????????
PROFIT!!111
Тогда позволю себе написать известное выражение — «аффтар, пеши исчо!»
Более правильно было бы написать, что процессор обменивается с памятью порциями длинной в кэш линию, которая на современных Intel\AMD процессорах равна 64 байта.
Каг бэ не интелом единым :) на старых процессорах кэш линии были короче, на ARM'ах, на сколько мне известно, на А9\А15 — 32 байта. На консолях с их РРС, тоже, кажется, 32 байта
P.S. На атомах, кажется, тоже 32 байта?!
отокам всё больше требуется КЭШ линий и в силу ограниченности шины им приходится всё дольше и дольше простаивать в ожидании данных.
По сути это кэш мисс — обращение к данным, которых нет в кэше. Было бы неплохо добавить в статью.
Для того, чтобы сделать запись линейной, нужно применить классическую оптимизацию, которая называется «трансформация массива структур в структуру массивов»
На этих словах у всех любителей ООП должен случиться баттхерт, так как такая философия плохо ложится на то, чему мы обычно привыкли
З.Ы. Замечательная статья. Припоминаю только 2 источника, где все было так же толково расписано — книга Касперски по оптимизации и книга от Интел Пресс на ту же тему :) Названия лень гуглить
w7nokia.ru/510-moshennichestvo-v-kompanii-zastavlyaet-zlitsya-akcionerov-nokia.html
Не углубляться в С и заниматься программированием — это как не учиться водить и участвовать в гонках. Понимание С ведет к пониманию того, как работает процессор, память и т.д. Знание того, как работает система позволяет писать быстрый и качественный код. А так же простой, как дверь — без куч ненужных интерфейсов, фабрик и прочего.
Пример: у вас есть выбор — использовать лист или массив, скорость вставки нас не волнует — нам надо будет линейно искать элементы в одной из этих структур. Сложность поиска в обеих структурах — О(n). Аргументировано сделайте выбор структуры? Я задавал эту простую задачку «программистам» которые начинали со всяких ява\C# и они ничего не знают о памяти. Отвечали, что выберут массив, на вопрос почему ничего не могли ответить, видимо, потому что привычнее и эту структуру они выучили первой. Когда я акцентировал внимание на том, что сложность поиска в обеих структурах одинаковая, т.е. по сути ж никакой разницы в выборе нет. Они терялись.
Ну и ответ, почему же я выберу массив — все элементы расположены друг за другом, это дружественно к кэшу. Я запрашиваю один элемент, а с памяти мне придут вместе с ним несколько других, расположенных за ним. В случае с листом, в зависимости от ужасности аллокатора памяти, я буду получать постоянные кэш миссы при доступе к следующему элементу массива. И на практике скорость поиска в массиве будет значительно быстрее — опять же, в зависимости от системы. На старых тачках с ддр1-2 латентность памяти ниже, чем у ддр3, следовательно кэш миссы будут «дешевле», а значения следующего элемента придет быстрее.
Опять же, в зависимости от ужасности аллокатора памяти, реальный объем памяти выделенный под элементы листа может в разы превосходить по объему память для массива. Будет большая фрагментация памяти, что в больших системах приведет к понижению производительности всей системы в целом.