Базовый Эрудит — questions

Jump to: navigation, search
12345
Знание базовых информационных технологий

Variant 94367693.


Your name*:


Question 1

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

Каждый процессор может выполнить одну инструкцию за 500 наносекунд, если инструкция ссылается на закешированные ячейки памяти. Но если происходит кеш-промах, то выполнение инструкций процессором задерживается на дополнительных 2000 наносекунд, причем первую половину этой задержки шина обслуживает запрос, а вторую половину задержки, результат этого запроса помещается в кеш процессора и происходят другие действия, а шина может обслуживать запросы от других процессоров. В среднем, каждая инструкция содержит два указателя на память, а кеш-промахи случаются в 1% указателей.

Какую часть пропускной способности шины использует один процессор, если игнорировать конкуренцию других процессоров?

  1.  
  2.  
  3.  
  4.  
  5.  

Question 2

Если SQL-запрос для таблицы MyTable содержит все нижеперечисленные (в вариантах) слова, какое из них должно быть последним:

  1.  set
  2.  MyTable
  3.  and
  4.  update
  5.  where

Question 3

Некоторая параллельная программа выполняется 100 секунд на одном процессоре. Если 40% вычислений являются строго последовательными и не могут быть распараллелены, то какое будет время выполнения этой программы на 2 и 4 процессорах соответственно:

  1.  80 и 70 секунд
  2.  20 и 10 секунд
  3.  70 и 55 секунд
  4.  50 и 25 секунд
  5.  30 и 15 секунд

Question 4

Рассмотрим SQL-запрос:

SELECT TYPE, avg(price), MIN(price)
FROM  product
GROUP BY category
Все ли слава богу с этим запросом?
  1.  Нельзя в SELECT-части заказывать и колонки и агрегатные функции
  2.  Нет, отсутствует WHERE-часть
  3.  Колонку type надо занести в group by-часть
  4.  Нельзя в SELECT-части заказывать несколько разных агрегатных функций
  5.  Да, все в порядке

Question 5

Пусть таблица vtable содержит (помимо прочих) следующие колонки:

   a        integer not null
   b        varchar(244) null

Что неправильно в следующем SQL-операторе:

  CREATE INDEX myindex ON vtable(a,b)
  1.  индексируемые столбцы должны быть NOT NULL
  2.  да все в порядке
  3.  нельзя строить индексы над текстовыми полями
  4.  индексы не могут содержать одновременно поля символьных и числовых типов
  5.  каждый индекс строится только над одним полем