Variant 3848456092.
Рассмотрим компьютерную многопроцессорную архитектуру, где каждый процессор имеет свой собственный кеш, и где все они конкурируют за доступ к системной шине (критическому ресурсу).
Каждый процессор может выполнить одну инструкцию за 500 наносекунд, если инструкция ссылается на закешированные ячейки памяти. Но если происходит кеш-промах, то выполнение инструкций процессором задерживается на дополнительных 2000 наносекунд, причем первую половину этой задержки шина обслуживает запрос, а вторую половину задержки, результат этого запроса помещается в кеш процессора и происходят другие действия, а шина может обслуживать запросы от других процессоров. В среднем, каждая инструкция содержит два указателя на память, а кеш-промахи случаются в 1% указателей.
Какую часть пропускной способности шины использует один процессор, если игнорировать конкуренцию других процессоров?
Программист Андрей Таранов написал быструю программу проверки орфографии. Сначала программа инициализирует логическую хеш-таблицу (булев массив, проиндексированный хеш-функцией) hashDict в false. Затем программа пробегает по всему словарю, и для каждого слова dicWord, выполняется hashDict[dicWord]=true. При проверке синтаксиса, для каждого слова word в тексте, программа проверяет hashDict[word].
Какие утверждения верны:
Некоторая параллельная программа выполняется 100 секунд на одном процессоре. Если 40% вычислений являются строго последовательными и не могут быть распараллелены, то какое будет время выполнения этой программы на 2 и 4 процессорах соответственно:
Рассмотрим структуру данных: односвязный список, с двумя указателями, на начало и на конец списка. Какая из следующих операций зависит от длины списка?
Могут ли приведенной BNF-грамматикой
<word>::=<letter>|<letter><pairlet>|<letter><pairdig> <pairlet>::=<letter><letter>|<pairlet><letter><letter> <pairdig>::=<digit><digit>|<pairdig><digit><digit> <letter>::=a|b|c|...|y|z <digit>::=0|1|2|...|9