Victor_VG
Tracker Mod | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору insorg В жизни есть единственная мертворождённая игрушка - упрямое заблуждение что кроме того, что нужно конкретному человеку более ничего и никому не нужно! CISC (процессоры с универсальными наборами команд) с процессоры появились в своё время как попытка создать универсальное решение для всех случаев исходя из чисто экономических соображений снижения затрат на разработку, производство и обслуживание ЭВМ и ПО. Но быстро выяснилось, что авторы идеи упустили из виду статистику использования тех или иных команд ЦП в разных классах задач, а сделать процессор одинаково эффективным для любых применений можно, только он будет чрезвычайно сложным и как следствие не надёжным, потреблять много энергии и сильно греться и чрезвычайно дорогим что сводило идею универсальности на нет. Например типичные офисные задачи в основном (до 90%) выполняют целочисленные операции +/-, сдвиг, чтение/запись, реже пересылку, целочисленное же умножение и деление. А процент операций с плавающей точкой (дробными числами) в них не велик, обычно он не превышает 5% - 7%. А к примеру финансовые расчёты в них выполняются как целочисленные и после вычисляется положение запятой - числа не превышают максимальные значения понимаемые ЦП что не вызывает ошибки переполнения, поэтому необходимости в более медленном чем целочисленное умножение/деление отдельном блоке умножения/деления с плавающей точкой нет. А в инженерных и научных расчётах наоборот 70% - 75% операций составляют различные комбинации операций сложения, умножения и деления именно с плавающей точкой, а на все вместе взятые целочисленные приходятся 10% - 15%, примерно 5% на различные условные переходы и остальное на ввод/вывод. А значит для них нужно ускорить именно часто выполняемые операции - необходим мощный блок для расчётов с плавающей точкой. А к примеру для задач баз данных до 80% операций приходится на операции сравнения и сдвига, 15% на операции ввода/вывода и оставшиеся 5% на все остальные. В итоге если совместить требования всех задач в одном ЦП то он выйдет чрезмерно дорогим, сложным и не надёжным и в итоге никому не будет нужен. Поэтому CISC процессоры это всегда компромиссные решения которые один или несколько сходных классов задач решают намного лучше чем все остальные, зато имеют приемлемые цену, ТТХ и надёжность, хотя не блещут производительностью от слова "совсем". Как альтернативу им придумали RISC (процессоры с сокращённым набором команд) архитектуры которые отличаются в разы более высокой чем CISC производительностью при равной надёжности, более простой схемотехнике и как следствие меньших нагреве и цене. Идея проста - аппаратно выполняется 80% наиболее востребованных в целевом классе задач операций, а все остальные считаются программно, что позволяет сократить среднее время решения задач в несколько раз по сравнению с CISC решениями. Архитектура х86 изначально разрабатывалась как CISC для решения типичных бизнес-задач - в основном офис, СУБД, финансовые расчёты где преобладают целочисленные операции число которых достигает примерно 75% - 80% от общего объёма, и только 10% - 15% операции с плавающей точкой, а все иные - что останется. И она оптимизирована под эти задачи - не просто так до i586 (Pentium) блок плавающей точки часто выполнялся в виде отдельной микросхемы 8087/80187/80287/80387/80487 и только в i586 микросхема i80587 была перенесена на кристалл процессора и кроме Carix никем отдельно не выпускалась, да то потому, что процессор Cx586 на самом деле был i486, но с набором команд i586 - надо же было их как-то различать. А RISC архитектура SPARC изначально создавалась как процессоры для научных расчётов и когда х86 была ещё 16 битной ибо этого хватало, процессоры SPARC работали с 32-х битными числами т.к. при у 16 бит ЦП резко падают точность и пределы расчётов. Но, это не важно, ибо "в мире есть только один Бог - мои Заблуждения и Уверенность пророк его!" P.S. Высмеем сего "божка" - ей-ей он это заработал!
---------- Жив курилка! (Р. Ролан, "Кола Брюньон") Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti |
|