Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Глава 38. Оценка производительности компьютеров.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
145.41 Кб
Скачать

38.3. Оценка производительности компьютерных систем, ориентированных на «сценарную» обработку

Актуальность оценки производительности в тер­ми­нах сце­нари­ев

Традиционные методики оценки производительности компьютеров постепенно теряют свою эффективность. Компьютеры все активнее взаимодействуют друг с другом, людьми и внешним миром, что приводит к появлению стиля компьютерной обработки, определяемой сценариями.

С 40-х годов 20-го века ос­нов­ны­ми мет­ри­ка­ми про­из­во­ди­тель­но­сти ком­пью­те­ров неиз­мен­но оста­ва­лись за­держ­ка (latency) и про­пуск­ная способность (throughput). Метрики эти со сво­и­ми за­да­ча­ми справ­ля­лись, по­сколь­ку ком­пью­те­ры ис­поль­зо­ва­лись очень нехит­рым об­ра­зом. Все­гда под­ра­зу­ме­ва­лось, что дан­ные до­ступ­ны, и толь­ко их объем и со­дер­жа­ние могут по­вли­ять на время вы­пол­не­ния. В такой си­ту­а­ции за­пу­щен­ные за­да­чи вы­пол­ня­ют­ся неза­ви­си­мо друг от друга, а из­ме­ре­ние ско­ро­сти вы­пол­не­ния каж­дой из про­грамм, вклю­чая опе­ра­ци­он­ную си­сте­му, опре­де­ля­ет общую про­из­во­ди­тель­ность ком­пью­тер­ной си­сте­мы, для по­вы­ше­ния ко­то­рой надо лишь сни­жать за­держ­ки и повышать про­пуск­ную спо­соб­ность. Ис­хо­дя из этого, и были раз­ра­бо­та­ны такие на­бо­ры те­стов, как SPEC (Standard Performance Evaluation Corporation),  EEMBC (Embedded Microprocessor Benchmark Consortium) и другие.

Для мно­гих современных ком­пью­тер­ов такая оцен­ка будет неадек­ват­ной. Компьюте­ры все ак­тив­нее вза­и­мо­дей­ству­ют с лю­дь­ми, фи­зи­че­ским миром и друг дру­гом, при­чем часто де­ла­ют все это од­но­вре­мен­но. Общая про­из­во­ди­тель­ность в такой си­ту­а­ции ста­но­вит­ся функ­ци­ей не толь­ко кон­крет­ных при­ло­же­ний, но и их вза­и­мо­дей­ствий друг с дру­гом, когда они кон­ку­ри­ру­ют за внут­рен­ние и внеш­ние ре­сур­сы. Мо­биль­ные телефоны, к при­ме­ру, часто кон­ку­ри­ру­ют за по­ло­су про­пус­ка­ния, ведь фразы собеседников надо пе­ре­да­вать во­вре­мя: за­держ­ка здесь недо­пу­сти­ма. При ор­га­ни­за­ции видео­кон­фе­рен­ции нор­маль­ная ра­бо­та за­ви­сит не толь­ко от ка­че­ства про­грамм­но­го обеспе­че­ния, но и от на­ли­чия сво­бод­ных ре­сур­сов па­мя­ти и про­цес­со­ра. Под­си­сте­мы ввода/вы­во­да, ко­то­рые до­ста­точ­но слабо или во­об­ще никак не кон­тро­ли­ру­ют­ся центральным про­цес­со­ром, и вза­и­мо­за­ви­си­мость между раз­лич­ны­ми про­грам­ма­ми становят­ся су­ще­ствен­ны­ми эле­мен­та­ми со­вре­мен­но­го про­грам­ми­ро­ва­ния и пол­но­стью раз­ру­ша­ют при­выч­ную мо­дель неза­ви­си­мой ком­пью­тер­ной об­ра­бот­ки, вы­пол­ня­е­мой в пакет­ном ре­жи­ме.

Се­год­ня ра­бо­ту многих ком­пью­те­ров при­хо­дит­ся опи­сы­вать в тер­ми­нах сце­на­ри­ев, с уче­том боль­шо­го ко­ли­че­ства по­то­ков ввода/вы­во­да, стро­го­го со­блю­де­ния вре­ме­ни выпол­не­ния и па­рал­лель­но вы­пол­ня­е­мых компьютером задач, а не в тер­ми­нах ско­ро­сти вы­пол­не­ния программ, изо­ли­ро­ван­ных друг от друга и от всего осталь­но­го мира. Все это по­рож­да­ет новый стиль вы­чис­ле­ний, ко­то­рый можно на­звать сце­нар­ным в от­ли­чие от усто­яв­ших­ся сти­лей вы­чис­ле­ний об­ще­го назначения и ори­ен­ти­ро­ван­ных на специфические приложения

Ме­то­ды оцен­ки, раз­ра­бо­тан­ные для сти­лей об­ще­го на­зна­че­ния и ори­ен­ти­ро­ван­ных на спе­ци­фи­че­ские при­ло­же­ния, не ра­бо­та­ют для «сце­нар­ной» об­ра­бот­ки — они про­сто не от­ра­жа­ют все де­та­ли со­вре­мен­ных ком­пью­теров, их па­ра­мет­ры не могут опи­сать все нюан­сы про­из­во­ди­тель­но­сти, су­ще­ствен­ные для ко­неч­ных поль­зо­ва­те­лей.

Эво­лю­ция ис­поль­зо­ва­ния ком­пью­тер­ных систем

При тра­ди­ци­он­ном ис­поль­зо­ва­нии ком­пью­те­ра за­да­ча Т1 по­сту­па­ет на вы­пол­не­ние в си­сте­му, неко­то­рое время выполняет­ся и за­вер­ша­ет­ся. Через ка­кое-то время дру­гая задача Т2 по­сту­па­ет на вы­пол­не­ние и поль­зу­ет­ся ре­сур­са­ми компью­те­ра. Ни­ка­кой конкурен­ции между задачами Т1 и Т2 нет, а есть толь­ко одна про­грам­ма, кото­рая управляет потоками и до­сту­пом к дан­ным, один вход­ной и один вы­ход­ной поток.

Со­вре­мен­ная мо­дель ис­поль­зо­ва­ния ком­пью­те­ров го­раз­до слож­нее. Мно­гие за­да­чи вы­пол­ня­ют­ся од­но­вре­мен­но, кон­ку­ри­ру­ют за ре­сур­сы и  об­ща­ются друг с дру­гом. В отличие от тра­ди­ци­он­ных схем, пре­об­ла­да­ет асин­хрон­ный и по­то­ко­вый ввод/вывод; здесь важны сиг­на­лы о внеш­них со­бы­ти­ях, ввод ко­манд от поль­зо­ва­те­ля, с Web-ка­ме­ры, муль­ти­ме­диа и т.д., что ме­ня­ет само пред­став­ле­ние о том, что такое произво­ди­тель­ность ком­пью­те­ра.

Уро­вень при­ня­тия ре­ше­ний, опи­ра­ю­щий­ся на пред­ва­ри­тель­ное пла­ни­ро­ва­ние, обес­пе­чи­ва­ет неза­ви­си­мое вы­пол­не­ние задач и поз­во­ля­ет несколь­ким по­то­кам ввода/выво­да сов­мест­но ис­поль­зо­вать один фи­зи­че­ский канал связи. Этот уро­вень поддержи­ва­ет ра­бо­ту в ре­аль­ном вре­ме­ни и обес­пе­чи­ва­ет по­треб­ность поль­зо­ва­те­лей в сов­мест­ной ра­бо­те. Слож­ные вза­и­мо­дей­ствия между за­да­ча­ми и ком­по­нен­та­ми оборудова­ния не поз­во­ля­ют опи­сать функ­ци­о­ни­ро­ва­ние компьютера в целом, если исходить из ра­бо­ты толь­ко одной изо­ли­ро­ван­ной за­да­чи или из по­сле­до­ва­тель­ной ра­бо­ты нескольких задач. Из-за этого из­вест­ный закон Ам­да­ла не под­хо­дит для опи­са­ния связанных си­стем с ге­те­ро­ген­ны­ми ре­сур­са­ми, по­сколь­ку за­мед­ле­ние в них при выполнении неко­то­рых задач может по­вы­сить общую про­из­во­ди­тель­ность.

В на­уч­ных и ин­же­нер­ных мо­де­лях при­ме­не­ния компьютеров уче­ные и ин­же­не­ры часто ис­поль­зу­ют ком­пью­те­ры для того, чтобы раз­ра­ба­ты­вать и за­пус­кать про­грам­мы в ре­жи­ме па­кет­ной об­ра­бот­ки. Од­на­ко компью­тер­ная от­расль вышла да­ле­ко за пре­де­лы этого до­ста­точ­но огра­ни­чен­но­го рынка. Со­зда­но огром­ное ко­ли­че­ство про­грамм, ко­то­рые ис­поль­зу­ют по­тен­ци­ал ком­пью­те­ров для предо­став­ле­ния новых воз­мож­но­стей и упрощения ра­бо­ты с ними для мас­со­во­го пользо­ва­те­ля. Тех­ни­че­ски неис­ку­шен­ные люди, по­ку­пая еже­год­но мил­ли­ар­ды мо­биль­ных те­ле­фо­нов, иг­ро­вых при­ста­вок и музыкаль­ных плей­е­ров, на­де­ют­ся, что все эти устрой­ства сде­ла­ют их жизнь проще и при­ят­ней.

Элек­трон­ная почта, Web, вир­ту­аль­ные миры — хо­ро­шие ил­лю­стра­ции того, что раз­ра­бот­чи­ки все­гда ис­поль­зо­ва­ли рас­ту­щую вы­чис­ли­тель­ную мощ­ность, чтобы со­здать удоб­ную ин­фра­струк­ту­ру для вы­чис­ле­ний. Такие при­ло­же­ния де­ла­ют куда боль­ше, чем про­стое ре­ше­ние за­да­чи — они со­зда­ют со­вер­шен­но новые тех­но­ло­ги­че­ские плат­фор­мы, ко­то­рые еще боль­ше уве­ли­чи­ва­ют по­треб­ность в вы­чис­ле­ни­ях. Кроме того, сами приложе­ния ста­но­вят­ся все слож­нее.

Со­то­вые те­ле­фо­ны се­год­ня до­стиг­ли та­ко­го уров­ня раз­ви­тия, что их про­сто нель­зя боль­ше рас­смат­ри­вать как устрой­ства для одной лишь пе­ре­да­чи го­ло­са. Они ис­поль­зу­ют мно­го­по­то­ко­вые опе­ра­ци­он­ные си­сте­мы, могут выполнять ре­дак­ти­ро­ва­ние видео, поддержи­ва­ют трех­мер­ные игры и дру­гие при­ло­же­ния, которые до недав­не­го вре­ме­ни были до­ступ­ны толь­ко для персональных компьютеров. Люди все мень­ше задумыва­ют­ся, что им имен­но нужно — обыч­ный ком­пью­тер или мо­биль­ный те­ле­фон, и все чаще ищут устрой­ства, в ко­то­рых были бы со­бра­ны при­ло­же­ния на все слу­чаи. Пользовате­ли хотят, чтобы такие устрой­ства об­ла­да­ли тра­ди­ци­он­ным на­бо­ром функ­ций и в то же время предостав­ля­ли им новые спосо­бы для вза­и­мо­дей­ствия с окру­жа­ю­щим миром.

Ком­пью­тер­ная об­ра­бот­ка на ос­но­ве сценариев

Рас­смот­рим бор­то­вую на­ви­га­ци­он­ную си­сте­му, ко­то­рая сред­ства­ми GPS-устройства опре­де­ля­ет те­ку­щее ме­сто­по­ло­же­ние и об­ра­ба­ты­ва­ет го­ло­со­вые ко­ман­ды поль­зо­ва­те­ля, ска­жем, «От­прав­ля­ем­ся на улицу А, 13». В ответ на такое ука­за­ние компьютер свя­зы­ва­ет­ся с сер­ве­ром карт, про­ве­ря­ет си­ту­а­цию с тра­фи­ком, вы­чис­ля­ет и показы­ва­ет оп­ти­маль­ный путь, вы­ра­ба­ты­ва­ет оп­ти­маль­ное на­прав­ле­ние с по­мо­щью специ­аль­ной про­грам­мы син­те­за речи с ука­за­ни­я­ми для поль­зо­ва­те­ля. Если в про­цес­се дви­же­ния при­хо­дит новая ин­фор­ма­ция об из­ме­не­нии тра­фи­ка, то ком­пью­тер пре­кра­ща­ет да­вать ука­за­ния и ищет аль­тер­на­тив­ный путь. В от­ли­чие от си­стем, ориенти­ро­ван­ных на кон­крет­ные при­ло­же­ния, компьютер вы­пол­ня­ет различные за­да­чи в раз­ное время, но все эти за­да­чи ра­бо­та­ют на до­сти­же­ние общей цели.

Такие устрой­ства, как мо­биль­ные те­ле­фо­ны, планшеты и иг­ро­вые при­став­ки, отличаются от устройств об­ще­го ха­рак­те­ра и со­всем по-дру­го­му ис­поль­зу­ют­ся. Пользовате­ли смот­рят на них через приз­му кон­крет­ных целей: ис­поль­зо­вать смарт­фон в ка­че­стве ка­лен­да­ря, плей­е­ра, иг­ро­вой при­став­ки, циф­ро­вой ка­ме­ры или как про­стой теле­фон. Такие устрой­ства можно при­ме­нять и для вы­пол­не­ния одной функ­ции в раз­ных ре­жи­мах, на­при­мер, ис­поль­зуя устрой­ство в ка­че­стве му­зы­каль­но­го плей­е­ра, про­иг­ры­вать песни в несколь­ких раз­ных фор­ма­тах. Ожи­да­ния по­тре­би­те­лей ка­са­ют­ся мо­де­лей примене­ния, а не кон­крет­ной про­грам­мы или устрой­ства, ко­то­рое ре­а­ли­зу­ет эти мо­де­ли.

По­сколь­ку поль­зо­ва­те­ли ожи­да­ют це­ло­го спек­тра воз­мож­но­стей от од­но­го компьютера, ге­те­ро­ген­ные про­грам­ми­ру­е­мые ядра ста­но­вят­ся цен­траль­ны­ми эле­мен­та­ми в компьютерах, ори­ен­ти­ро­ван­ных на сце­на­рии. В от­ли­чие от ре­ше­ний с фик­си­ро­ван­ной целью, в компьютерах, ори­ен­ти­ро­ван­ных на при­ло­же­ния, вы­чис­ли­тель­ная мощ­ность програм­ми­ру­е­мых ядер на­прав­ле­на на вы­пол­не­ние ши­ро­ко­го спек­тра задач. В от­ли­чие от ком­пью­теров об­ще­го на­зна­че­ния, устрой­ства, ори­ен­ти­ро­ван­ные на сце­на­рии, долж­ны при­ни­мать из­ме­ня­ю­щи­е­ся за­про­сы на об­ра­бот­ку дан­ных раз­лич­но­го типа в кон­крет­ные пе­ри­о­ды вре­ме­ни.

Непри­год­ность су­ще­ству­ю­щих те­стов и мет­рик

Те­сто­вый набор пред­став­ля­ет собой несколь­ко при­ло­же­ний, поз­во­ля­ю­щих комплекс­но оце­нить ра­бо­ту компьютера. Тест SPEC CPU — ос­нов­ной тест, используемый созда­те­ля­ми ком­пью­те­ров,— вклю­ча­ет ряд ин­же­нер­ных и на­уч­ных при­ло­же­ний, специаль­но ото­бран­ных и мо­ди­фи­ци­ро­ван­ных для того, чтобы све­сти к ми­ни­му­му взаимодей­ствие с опе­ра­ци­он­ной си­сте­мой. Тест EEMBC со­дер­жит ядро и встро­ен­ные приложе­ния. Набор Stanford SPLASH из­ме­ря­ет время ра­бо­ты рас­па­рал­ле­ли­ва­е­мых алгорит­мов, поз­во­ля­ет ана­ло­гич­ным об­ра­зом оце­нить тра­ди­ци­он­ные мно­го­про­цес­сор­ные структу­ры. Все при­ло­же­ния в этих те­сто­вых на­бо­рах неза­ви­си­мы и вы­пол­ня­ют­ся по отдель­но­сти.

Про­из­во­ди­тель­ность в тесте SPEC из­ме­ря­ет­ся, как уско­ре­ние по от­но­ше­нию к эталон­ной си­сте­ме. По­сколь­ку цель любого ком­пью­тер­а со­сто­ит в том, чтобы обеспечить от­лич­ную про­из­во­ди­тель­ность при любой ра­бо­те, уско­ре­ние каждо­го приложе­ния трак­ту­ет­ся одинако­во, а общее уско­ре­ние опре­де­ля­ет­ся как геометри­че­ское сред­нее. Гео­мет­ри­че­ское сред­нее при­пи­сы­ва­ет боль­шие веса приложениям с мень­шей про­из­во­ди­тель­но­стью — если хотя бы один ре­зуль­тат равен нулю, то и общий по­ка­за­тель равен нулю, что озна­ча­ет бес­ко­неч­ный вес для кон­крет­но­го при­ло­же­ния. Таким об­ра­зом, луч­ший ре­зуль­тат покажут сба­лан­си­ро­ван­ные си­сте­мы, кото­рые боль­ше под­хо­дят для при­ло­же­ний об­ще­го на­зна­че­ния, но этот метод не оце­нит адек­ват­но функ­ци­о­ни­ро­ва­ние компьютеров, ориентированных на сце­на­рии.

В ком­плек­те тестов SPEC име­ет­ся набор SPEC_rate для из­ме­ре­ния про­пуск­ной способности мно­го­про­цес­сор­ных си­стем. Чтобы опре­де­лить по­ка­за­те­ли SPEC_rate, компью­тер одно­вре­мен­но вы­пол­ня­ет n копий каж­дой из задач, а затем опре­де­ля­ет все их времена выпол­не­ния. Такой под­ход ори­ен­ти­ро­ван на вы­пол­не­ние од­но­род­ных задач, скажем, на при­ло­же­ния типа ин­же­нер­но­го проектирования, Internet-хо­стинг, ра­бо­ту с база­ми данных и высоко­про­из­во­ди­тель­ные вы­чис­ле­ния. Компьютеры, ори­ен­ти­ро­ван­ные на сце­на­рии, на­про­тив, преду­смат­ри­ва­ют раз­лич­ные мо­де­ли ис­поль­зо­ва­ния.

Неко­то­рые те­сто­вые на­бо­ры, такие как SYSmark и 3Dmark, предназначены для оцен­ки ком­мер­че­ских ха­рак­те­ри­стик ком­пью­тер­а. В тесте SYSmark используются наиболее рас­про­стра­нен­ные ком­мер­че­ские при­ло­же­ния — Adobe Acrobat Reader, Macromedia Dreamweaver, McAfee VirusScan и Microsoft Office — в со­че­та­нии с вход­ной ин­фор­ма­ци­ей и дан­ны­ми, по­лу­ча­е­мы­ми от ре­аль­ных со­бы­тий. Различ­ные прило­же­ния выпол­ня­ют­ся сов­мест­но в раз­ных сце­на­ри­ях, на­при­мер, в коммуни­ка­ци­ях (элек­трон­ная почта и поиск в Internet) и ана­ли­зе дан­ных (за­про­сы в базы дан­ных и операции над таблица­ми). Для каж­до­го сце­на­рия вы­да­ет­ся свой отчет. Тест SYSmark оценива­ет время от­кли­ка, а не время счета, от­ра­жая тот факт, что мно­гие при­ло­же­ния зави­сят от происходя­щих со­бы­тий и могут на­хо­дить­ся в «уснув­шем» со­сто­я­нии, пока поль­зо­ва­тель с ними не вза­и­мо­дей­ству­ет.

Тест SYSmark в боль­шей сте­пе­ни, чем тест SPEC, под­хо­дит для оцен­ки современных приложе­ний, но и он не вклю­ча­ет про­грам­мы, ра­бо­та­ю­щие в ре­аль­ном време­ни, например, по­то­ко­вое видео или об­ра­бот­ку сиг­на­лов и рас­по­зна­ва­ние го­ло­са, что ограничи­ва­ет спо­соб­ность теста SYSmark опи­сы­вать мо­де­ли ис­поль­зо­ва­ния, ориентирован­ные на сце­на­рии.

Тест 3Dmark оце­ни­ва­ет про­из­во­ди­тель­ность устройств при вы­пол­не­нии иг­ро­вых приложе­ний. Этот тест из­ме­ря­ет ско­рость вы­пол­не­ния игр с очень ин­тен­сив­ной гра­фи­кой в ре­жи­ме ре­аль­но­го вре­ме­ни. Тест 3Dmark из­на­чаль­но был сфо­ку­си­ро­ван на ра­бо­те графических про­цес­со­ров, но в дальнейшем в  него было до­бав­ле­ны и за­да­чи, позволяющие оценить про­из­во­ди­тель­ность и цен­траль­но­го про­цес­со­ра.

Таким об­ра­зом, несмот­ря на то, что ис­сле­до­ва­те­ли вкла­ды­ва­ют свой та­лант и творче­ство в раз­ра­бот­ку те­стов, этого еще недо­ста­точ­но для оцен­ки ком­пью­тер­ов, ориен­ти­ро­ван­ных на сце­на­рии по следующим причинам:

  • Мет­ри­ки при­пи­сы­ва­ют оди­на­ко­вый вес всем приложениям. Это яв­ля­ет­ся насле­ди­ем компьютеров об­ще­го на­зна­че­ния, вы­пол­ня­ю­щих изо­ли­ро­ван­ные за­да­чи. При рабо­те в ин­тер­ак­тив­ном ре­жи­ме быст­рый ответ на неко­то­рые со­бы­тия более важен, чем время от­кли­ка на дру­гие.

  • Мет­ри­ки опре­де­ля­ют про­из­во­ди­тель­ность ком­пью­те­ров по их спо­соб­но­сти уско­рять дей­ствие, а не от­кры­вать новые возможности. Поль­зо­ва­те­ли ожи­да­ют интегра­ции новых воз­мож­но­стей, таких как рас­по­зна­ва­ние речи, а не уско­ре­ния уже существу­ю­щих функ­ций на­по­до­бие про­вер­ки на­ли­чия син­так­си­че­ских оши­бок в тек­сте.

  • Мет­ри­ки не учи­ты­ва­ют вза­и­мо­дей­ствия между приложениями. Когда несколь­ко при­ло­же­ний ра­бо­та­ют на общую цель, уско­ре­ние неко­то­рых из них не обязатель­но при­ве­дет к улуч­ше­нию ре­зуль­та­та, а на­о­бо­рот, может сни­зить общую произво­ди­тель­ность.

Се­год­ня ни одна из су­ще­ству­ю­щих мет­рик про­из­во­ди­тель­но­сти не поз­во­ля­ет оценивать ори­ен­ти­ро­ван­ны­е на сце­на­рии компьютеры. Ис­то­ри­че­ски ком­пью­тер­ная струк­ту­ра все­гда была ис­кус­ством вы­яв­ле­ния и устра­не­ния «узких» мест с по­мо­щью увели­че­ния кэш-па­мя­ти или пред­ска­за­ния ветв­ле­ний. Для бу­ду­щих ком­пью­тер­ных структур име­ют­ся свои ме­то­ды оп­ти­ми­за­ции функ­ци­о­ни­ро­ва­ния, но они при­ме­ня­ют­ся толь­ко для кри­ти­че­ских слу­ча­ев — когда при­ло­же­ние ра­бо­та­ет на грани воз­мож­но­стей обо­ру­до­ва­ния и про­из­во­ди­тель­ность резко де­гра­ди­ру­ет. Те­сто­вые на­бо­ры, ориентированные на сце­на­рии, долж­ны поз­во­лять иден­ти­фи­ци­ро­вать кри­ти­че­ские слу­чаи и по­мо­гать их раз­ре­шить.

Требования к тестам производительности вы­чис­ле­ний, ориентированных на сце­на­рии

Про­бле­му адек­ват­ной оцен­ки про­из­во­ди­тель­но­сти вы­чис­ле­ний, ори­ен­ти­ро­ван­ных на сце­на­рии, можно раз­де­лить на выбор те­стов и раз­ра­бот­ку мет­рик.

Выбор теста — это про­бле­ма опре­де­ле­ния вы­чис­ли­тель­ной на­груз­ки в тер­ми­нах вход­ной ин­фор­ма­ции (про­грам­мы и дан­ные) и вре­ме­ни вы­пол­не­ния. Тесты, ориентирован­ные на сце­на­рии, долж­ны удо­вле­тво­рять сле­ду­ю­щим тре­бо­ва­ни­ям:

  • Вклю­чать в себя вза­и­мо­дей­ствие про­грамм­но­го обес­пе­че­ния и оборудования. За­да­чи могут ожи­дать друг друга, вза­и­мо­дей­ство­вать, раз­мно­жать­ся и по­ки­дать си­сте­му. При этом на­груз­ка на компьютер может су­ще­ствен­но ме­нять­ся.

  • Предо­став­лять чет­кую вре­мен­ную ин­фор­ма­цию для вхо­дов и вы­хо­дов. Посколь­ку всего один «клик» мыш­кой может за­пу­стить целую сеть вы­чис­ле­ний, важно четко знать их рас­по­ло­же­ние от­но­си­тель­но дру­гих со­бы­тий.

  • Об­ра­ба­ты­вать кри­ти­че­ские слу­чаи. Сце­на­рии долж­ны изо­ли­ро­вать из­ло­мы кри­вых по­ка­за­те­лей про­из­во­ди­тель­но­сти. По­сколь­ку быст­ро­дей­ствие за­ви­сит от используе­мо­го обо­ру­до­ва­ния, дол­жен су­ще­ство­вать ме­ха­низм на­строй­ки тре­бо­ва­ний различ­ны­ми спо­со­ба­ми.

  • Опи­сы­вать целые на­бо­ры мо­де­лей ис­поль­зо­ва­ния. Хотя они и на­прав­ле­ны на опре­де­лен­ные типы ис­поль­зо­ва­ния, сце­нар­но-ори­ен­ти­ро­ван­ные компьютеры могут приносить поль­зу и в дру­гих ре­жи­мах. Ко­ли­че­ствен­ная оцен­ка вза­и­мо­дей­ствий между основ­ной и вто­рич­ны­ми мо­де­ля­ми ис­поль­зо­ва­ния про­сто необ­хо­ди­ма. На­при­мер, что лучше — иметь от­лич­ный кар­ман­ный те­ле­ви­зор или по­жерт­во­вать неко­то­ры­ми его функци­я­ми, но по­лу­чить вза­мен воз­мож­ность ис­поль­зо­вать это же устрой­ство как телефон.

При кар­ди­наль­но из­ме­ненной струк­ту­ре те­сти­ро­ва­ния для компьютеров, ориентиро­ван­ных на сце­на­рии, со­от­вет­ствен­но, долж­ны из­ме­нить­ся и  мет­ри­ки, которые, долж­ны удо­вле­тво­рять следую­щим кри­те­ри­ям:

  • Раз­ли­чать эле­мен­ты при­ло­же­ний по их по­лез­но­сти. У поль­зо­ва­те­лей нет еди­ных тре­бо­ва­ний к функ­ци­о­ни­ро­ва­нию всех задач или даже к ча­стям одной за­да­чи.

  • Учи­ты­вать нели­ней­ность. Слож­ная за­да­ча, вы­пол­ня­е­мая в ре­жи­ме ре­аль­но­го вре­ме­ни, долж­на уло­жить­ся в по­став­лен­ные сроки. После того как все сроки про­шли, смыс­ла в даль­ней­шем уско­ре­нии за­да­чи может про­сто не быть. Нечто по­хо­жее происходит с лю­дь­ми: ско­рость ре­ак­ции у че­ло­ве­ка огра­ни­че­на, и если со­бы­тия происходят быст­рее, они про­сто не вос­при­ни­ма­ют­ся. На­при­мер, гра­фи­че­ская за­да­ча бессмыс­лен­на, если об­ра­зы будут ме­нять­ся быст­рее, чем время от­кли­ка мо­ни­то­ра.

  • Опи­сы­вать кри­ти­че­ские слу­чаи. По­ни­ма­ние в си­сте­ме всех вза­и­мо­дей­ствий, ори­ен­ти­ро­ван­ных на сце­на­рии, тре­бу­ет зна­ния того, в какой мо­мент, в какой функ­ции и в каком месте эти вза­и­мо­дей­ствия при­во­дят к сни­же­нию общей про­из­во­ди­тель­но­сти.

  • Обес­пе­чи­вать ви­зу­аль­ное пред­став­ле­ние. Кар­тин­ки и гра­фи­ки — мощ­ное сред­ство для пред­став­ле­ния слож­ной ин­фор­ма­ции и вза­и­мо­дей­ствий. Це­ле­со­об­раз­но исполь­зо­вать диа­грам­мы со стол­би­ка­ми в со­че­та­нии с тестами SPEC, чтобы демонстрировать улуч­ше­ния в про­пуск­ной спо­соб­но­сти и умень­ше­ние за­дер­жек.

Разработ­чи­кам компьютеров, ори­ен­ти­ро­ван­ных на сце­на­рии, часто тре­бу­ет­ся выбрать один под­ход из мно­же­ства аль­тер­на­тив, когда оп­ти­маль­ный ва­ри­ант со­всем не очеви­ден. Надо до­бить­ся того, чтобы буду­щие тесты по­мо­га­ли при­ни­мать пра­виль­ные реше­ния.