Variant 3642984664.
Рассмотрим компьютерную многопроцессорную архитектуру, где каждый процессор имеет свой собственный кеш, и где все они конкурируют за доступ к системной шине (критическому ресурсу).
Каждый процессор может выполнить одну инструкцию за 500 наносекунд, если инструкция ссылается на закешированные ячейки памяти. Но если происходит кеш-промах, то выполнение инструкций процессором задерживается на дополнительных 2000 наносекунд, причем первую половину этой задержки шина обслуживает запрос, а вторую половину задержки, результат этого запроса помещается в кеш процессора и происходят другие действия, а шина может обслуживать запросы от других процессоров. В среднем, каждая инструкция содержит два указателя на память, а кеш-промахи случаются в 1% указателей.
Какую часть пропускной способности шины использует один процессор, если игнорировать конкуренцию других процессоров?
Для программного фрагмента
p:=1; k:=0; while k<n do begin p:=2*p; k:=k+1; end;
Приведенная C-программа
#include <stdio.h> main() { float sum=0.0, j=1.0, i=2.0; while (i/j>0.001) { j=j+j; sum=sum+i/j; printf("%f \n",sum); } }
Какие обьекты в вашей базе помогут избежать безумных запросов с кучей JOINнов (которых обычно городят необученные новички):
Обозначим через реверс (полную перестановку) для строки x. Тогда для реверс конкатенации строк x и y, будет: