Помогите с тактами

Я с трудом разбираюсь в тактах. Вот проблема, мне дают программу, которая имеет две инструкции X и Y, и я знаю, что X выполняется 20% времени и требует 8 тактов, а другая инструкция Y выполняется 80% времени и требует 2 часов циклы. Если в моей программе 10 миллионов инструкций, мне нужно найти:

А. Минимальное количество тактов для выполнения одной инструкции?

B. Максимальное ускорение с использованием закона Амдала, которое можно найти, улучшив инструкцию X.

Это моя догадка, и, пожалуйста, помогите мне, где я не прав. Для A минимальное количество тактов для выполнения одной инструкции составляет 1 такт. Я думал, что где-то читал это, но я не уверен.

Чтобы сделать B I, я предполагаю, что я должен был решить для ускорения, когда X имеет тактовый цикл 1, потому что это означало бы, что он выполняет самый быстрый.

Являются ли эти предположения правильными? Любая помощь будет оценена. Спасибо

1 ответ

Я не знаю о 1

Но за 2 программа берет T = .2*10 000 000*8 + .8*10 000 000*2 циклы
Улучшение инструкции X может сделать так, что это займет всего n циклов (ответ из 1)
Что значит U = .2*10 000 000*n + .8*10 000 000*2 циклы для запуска программы
Это означает, что это займет U/T Время оригинала для запуска программы, если вы делаете улучшение. Увеличение скорости в T/U

Другие вопросы по тегам