Erhalten Sie Zugang zu diesem und mehr als 300000 Büchern ab EUR 5,99 monatlich.
Это исчерпывающее руководство поможет вам правильно разрабатывать бенчмарки, измерять ключевые метрики производительности приложений .NET и анализировать результаты. В книге представлены десятки кейсов, проясняющих сложные аспекты бенчмаркинга. Ее изучение позволит вам избежать распространенных ошибок, проконтролировать точность измерений и повысить производительность своих программ.
Sie lesen das E-Book in den Legimi-Apps auf:
Seitenzahl: 726
Veröffentlichungsjahr: 2024
Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:
Переводчики А. Григорьева, А. Григорьева, А. Григорьева, А. Григорьева, А. Григорьева, А. Григорьева, О. Сивченко
Андрей Акиньшин
Профессиональный бенчмарк: искусство измерения производительности. — СПб.: Питер, 2024.
ISBN 978-5-4461-1551-8
© ООО Издательство "Питер", 2024
Андрей Акиньшин — старший разработчик в компании JetBrains. Там он трудится над Rider (кросс-платформенной средой разработки для .NET, основанной на платформе IntelliJ и ReSharper). Является мейнтейнером BenchmarkDotNet (самой популярной библиотеки для написания .NET-бенчмарков).
Андрей — программный директор конференции DotNext. На его счету более ста выступлений на различных мероприятиях для разработчиков, множество статей и постов. Кроме того, Андрей — обладатель звания Microsoft .NET MVP и серебряной медали Международной студенческой олимпиады по программированию ACM ICPC.
Автор имеет степень кандидата физико-математических наук и занимается научными проектами в сфере математической биологии и теории бифуркаций в Институте математики имени С.Л. Соболева Сибирского отделения Российской академии наук. Раньше он работал постдоком (postdoctoral research) в Институте имени Вейцмана.
Джон Гарленд — вице-президент по образовательным сервисам в компании Wintellect. Он профессионально разрабатывает программное обеспечение с 1990-х годов. Клиенты, которых он консультирует, — это и небольшие фирмы, и компании из списка Fortune 500. Его работа обсуждалась в основных тезисах и секциях конференций Microsoft. Он выступал на конференциях в Северной и Южной Америке и Европе. Джон живет в городе Камминге (штат Джорджия) с женой и дочерью. Он окончил Университет Флориды, получив степень бакалавра по вычислительной технике, написал книгу Windows Store Apps Succinctly («Краткий обзор приложений для Windows Store») и был соавтором книги Programming the Windows Runtime by Example («Программирование Windows Runtime в примерах»). На данный момент Джон работает над архитектурой облачного сервиса Microsoft Azure, является участником группы Microsoft Azure Insiders, ценным специалистом по Microsoft Azure, сертифицированным преподавателем Microsoft и сертифицированным членом общества разработчиков Microsoft Azure.
Саша Голдштейн — разработчик программного обеспечения в Google Research. Он работает над применением машинного обучения в различных продуктах Google, связанных с диалогами, классификацией текста, системами рекомендаций и т.д. До работы в Google Саша более десяти лет занимался отладкой программного обеспечения и оптимизацией производительности, вел курсы по всему миру и выступал на множестве международных конференций. Написал книгу Pro .NET Performance («Оптимизация приложений на платформе .NET») (Apress, 2012).
Я начал собирать материал для этой книги пять лет назад. На написание потратил около двух с половиной лет. Но, даже проработав над книгой тысячи часов, я все равно не смог бы закончить все главы в одиночку. Эта книга создана с помощью многих талантливых разработчиков.
Прежде всего я хотел бы поблагодарить Ивана Пащенко. Это человек, который вдохновил меня поделиться тем, что я знаю, и комментировал не только эту книгу, но и десятки моих ранних постов в блоге. Он поддерживал меня много лет и помог мне понять множество нюансов, необходимых для написания хорошей технической литературы. Спасибо, Иван!
Во-вторых, хочу поблагодарить всех моих неофициальных рецензентов: Ирину Ананьеву, Михаила Филиппова, Игоря Луканина, Адама Ситника, Карлена Симоняна, Стивена Тауба, Алину Смирнову, Федерико Андреса Луиса, Конрада Кокосу и Вэнса Моррисона. Они потратили немало времени на чтение черновиков и нашли кучу ошибок и опечаток на ранних стадиях написания. И дали много хороших советов, которые помогли мне значительно улучшить книгу.
В-третьих, я хочу поблагодарить команду издательства Apress: Джона Гарленда и Сашу Голдштейна (официальных технических рецензентов), Джоан Мюррей (рецензента издательства), Лору Берендсон (редактора-консультанта по аудитории), Нэнси Чен (редактора-координатора), Гвенан Спиринг (начального рецензента издательства) и остальных членов команды, которые помогли мне издать эту книгу. Прошу прощения за сорванные сроки и говорю вам спасибо за терпение. Благодаря этим людям из моих черновиков и заметок появилась реальная книга. Они помогли структурировать содержимое, представить мои идеи в понятной форме и исправить грамматические ошибки.
Далее я хочу поблагодарить всех разработчиков и пользователей BenchmarkDotNet. Я очень рад, что этот проект не только помогает программистам измерять производительность и анализировать результаты, но и популяризирует правильные подходы к бенчмаркингу, способствует дискуссиям о тонкостях бенчмаркинга и производительности. Я особенно благодарен Адаму Ситнику за огромный вклад в проект: без него эта библиотека не была бы такой замечательной.
Хочу также поблагодарить всех, с кем я обсуждал бенчмаркинг и производительность, кто пишет статьи на эти темы и выступает на конференциях. Я узнал много нового из личных бесед, постов в блогах, дискуссий на GitHub, обсуждений в Twitter и вопросов на StackOverflow (многие ссылки указаны в примечаниях и списке источников в конце книги). В особенности я хотел бы поблагодарить Мэтта Уоррена, Брендана Грегга, Дэниела Лейкенса, Джона Скита, Энди Эйерса, Агнера Фога, Реймонда Чена, Брюса Доусона, Дениса Бахвалова, Алексея Шипилева, Александра Мьютела, Бена Адамса и сотни других разработчиков, которые делятся своими знаниями и помогают создавать проекты с открытым исходным кодом. В книге можно найти много прекрасных практических примеров, существующих благодаря тем участникам сообщества, кому небезразлична производительность.
И наконец, я хочу поблагодарить свою семью и всех друзей и коллег, которые верили в меня, поддерживали и все время спрашивали: «Когда же наконец издадут твою книгу?»
Ваши замечания, предложения, вопросы отправляйте по адресу [email protected] (издательство «Питер», компьютерная редакция).
Мы будем рады узнать ваше мнение!
На веб-сайте издательства www.piter.com вы найдете подробную информацию о наших книгах.
Если вы изучали результат бенчмарка меньше недели, скорее всего, он неверный.
Брендан Грегг, автор книги Systems Performance: Enterprise and the Cloud (Prentice Hall, 2013)