Invest-currency.ru

Как обезопасить себя в кризис?
2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Floating point performance

Тфлопс

FLOPS (или flops или flop/s)(акроним от англ. Floating point Operations Per Second , произносится как флопс) — величина, используемая для измерения производительности компьютеров, показывающая, сколько операций с плавающей запятой в секунду выполняет данная вычислительная система.

Поскольку современные компьютеры обладают высоким уровнем производительности, более распространены производные величины от FLOPS, образуемые путём использования стандартных приставок системы СИ.

Содержание

Флопс как мера производительности

Как и большинство других показателей производительности, данная величина определяется путём запуска на испытуемом компьютере тестовой программы, которая решает задачу с известным количеством операций и подсчитывает время, за которое она была решена. Наиболее популярным тестом производительности на сегодняшний день является программа LINPACK, используемая, в том числе, при составлении рейтинга суперкомпьютеров TOP500.

Одним из важнейших достоинств показателя флопс является то, что он до некоторых пределов может быть истолкован как абсолютная величина и вычислен теоретически, в то время как большинство других популярных мер являются относительными и позволяют оценить испытуемую систему лишь в сравнении с рядом других. Эта особенность даёт возможность использовать для оценки результаты работы различных алгоритмов, а также оценить производительность вычислительных систем, которые ещё не существуют или находятся в разработке.

Границы применимости

Несмотря на кажущуюся однозначность, в реальности флопс является достаточно плохой мерой производительности, поскольку неоднозначным является уже само его определение. Под «операцией с плавающей запятой» может скрываться масса разных понятий, не говоря уже о том, что существенную роль в данных вычислениях играет разрядность операндов, которая также нигде не оговаривается. Кроме того, величина флопс подвержена влиянию очень многих факторов, напрямую не связанных с производительностью вычислительного модуля, таких как: пропускная способность каналов связи с окружением процессора, производительность основной памяти и синхронность работы кэш-памяти разных уровней.

Всё это, в конечном итоге, приводит к тому, что результаты, полученные на одном и том же компьютере при помощи разных программ, могут существенным образом отличаться, более того, с каждым новым испытанием разные результаты можно получить при использовании одного алгоритма. Отчасти эта проблема решается соглашением об использовании однообразных тестовых программ (той же LINPACK) с осреднением результатов, но со временем возможности компьютеров «перерастают» рамки принятого теста и он начинает давать искусственно заниженные результаты, поскольку не задействует новейшие возможности вычислительных устройств. А к некоторым системам общепринятые тесты вообще не могут быть применены, в результате чего вопрос об их производительности остаётся открытым.

Так, например, 24 июня 2006 года общественности был представлен суперкомпьютер Йокогама), с рекордной теоретической производительностью в 1 Пфлопс. Однако данный компьютер не является компьютером общего назначения и приспособлен для решения узкого спектра конкретных задач, в то время как стандартный тест LINPACK на нём выполнить невозможно в силу особенностей его архитектуры.

Также, высокую производительность на специфичных задачах показывают графические процессоры современных видеокарт и игровые приставки. К примеру, заявленная производительность игровой приставки Xbox 360 составляет 1 Тфлопс, а приставки PlayStation 3 и вовсе 2 Тфлопс, что ставит их в один ряд с суперкомпьютерами начального уровня. Столь высокие показатели обеспечиваются тем, что операции с трёхмерной графикой, которые они в основном выполняют, очень хорошо поддаются распараллеливанию, что с успехом используется в графических процессорах. Однако эти процессоры не в состоянии выполнять большинство задач общего назначения, и их производительность не поддаётся оценке теста LINPACK и сравнению с другими системами.

Причины широкого распространения

Несмотря на большое число существенных недостатков, показатель флопс продолжает с успехом использоваться для оценки производительности, базируясь на результатах теста LINPACK. Причины такой популярности обусловлены, во-первых, тем, что флопс, как говорилось выше, является абсолютной величиной. А, во-вторых, очень многие задачи инженерной и научной практики, в конечном итоге, сводятся к решению систем линейных алгебраических уравнений, а тест LINPACK как раз и базируется на измерении скорости решения таких систем. Кроме того, подавляющее большинство компьютеров (включая суперкомпьютеры), построены по классической архитектуре с использованием стандартных процессоров, что позволяет использовать общепринятые тесты с большой достоверностью. Как показано на процессорах Intel Core 2 Quad Q9450 2.66ГГц @3.5ГГц и Intel Core 2 Duo E8400 3000 МГц (2008) программа LINPACK не использует решения алгебраических выражений, так как любая операция не может идти быстрее, чем 1 такт процессора. Так для процессоров Intel Core 2 Quad один такт требует один-два герца. Так как для задач с плавающей запятой: деление/умножение, сложение/вычитание — требуется намного больше одного такта, то видно, что выдать 48 Гигафлопс и 18,5 гигафлопса соответственно данные процессоры не могли. Часто вместо операции деления с плавающей запятой используется загрузка данных в режиме ДМА из оперативной памяти в стек процессора. Так работает программа LINPACK в некоторых тестах, но, строго говоря, результат не является значением флопс.

Читать еще:  Объемные фигуры в powerpoint

Примечание: замечание о невозможности выполнения более одной операции за такт абсолютно некорректно, так как все современные процессоры в каждом своем ядре содержат несколько исполнительных блоков каждого типа (в том числе и для операций с плавающей точкой) работающих параллельно и могут выполнять более одной инструкции за такт. Данная особенность архитектуры называется суперскалярность и впервые появилась еще в самом первом процессоре

Обзор производительности реальных систем

Из-за высокого разброса результатов теста LINPACK, приведены примерные величины, полученные путём осреднения показателей на основе информации из разных источников. Производительность игровых приставок и распределённых систем (имеющих узкую специализацию и не поддерживающих тест LINPACK) приведена в справочных целях в соответствии с числами, заявленными их разработчиками. Более точные результаты с указанием параметров конкретных систем можно получить, например, на сайте The Performance Database Server.

Суперкомпьютеры

  • Компьютер ЭНИАК, построенный в 1946 году, при массе 27 т и энергопотреблении 150 кВт, обеспечивал производительность в 300 флопс
  • IBM 709 (1957) — 5 кфлопс
  • БЭСМ-6 (1968) — 1 Мфлопс (операций деления)
  • Cray-1 (1974) — 160 Мфлопс
  • БЭСМ-6 на базе Эльбрус-1К2 (1980-х) — 6 Мфлопс (операций деления)
  • Cray Y-MP (1988) — 2,3 Гфлопс
  • ASCI Red (1993) — 1 Тфлопс
  • Blue Gene/L (2006) — 478,2 Тфлопс
  • Jaguar (суперкомпьютер) (2008) — 1,059 Пфлопс
  • IBM Roadrunner (2008) — 1,105 Пфлопс [1]
  • IBM Sequoia (2012) — 20 Пфлопс [2]

Персональные компьютеры

  • PC/XT (1983) — 6,9 кфлопс
  • ПК на основе процессора 80386 (1985) с тактовой частотой 40 МГц — 0,6 Мфлопс
  • Intel
  • Intel Pentium II 300 МГц (1997) — 50 Мфлопс
  • Intel Pentium III 1 ГГц (1999) — 320 Мфлопс
  • AMDAthlon 64 2,211 ГГц (2003) — 840 Мфлопс [3]
  • Intel Core 2 Duo 2,4 ГГц (2006) — 1,3 Гфлопс

Article

Fixed-Point vs. Floating-Point Digital Signal Processing

Innovation Begins With Digital Signal Processing

Digital signal processors (DSPs) are essential for real-time processing of real-world digitized data, performing the high-speed numeric calculations necessary to enable a broad range of applications – from basic consumer electronics to sophisticated industrial instrumentation. Software programmable for maximum flexibility and supported by easy-to-use, low-cost development tools, DSPs enable designers to build innovative features and differentiating value into their products, and get these products to market quickly and cost-effectively.

There are many considerations that system developers weigh when selecting digital signal processors for their applications. Among the key factors to consider are the computational capabilities required for the application, processor and system costs, performance attributes, and ease of development. Balancing these factors together, designers can identify the DSP that is best suited for an application.

Читать еще:  Основные элементы интерфейса powerpoint

Fixed Point vs Floating Point

Digital signal processing can be separated into two categories — fixed point and floating point. These designations refer to the format used to store and manipulate numeric representations of data. Fixed-point DSPs are designed to represent and manipulate integers – positive and negative whole numbers – via a minimum of 16 bits, yielding up to 65,536 possible bit patterns (2 16 ). Floating-point DSPs represent and manipulate rational numbers via a minimum of 32 bits in a manner similar to scientific notation, where a number is represented with a mantissa and an exponent (e.g., A x 2 B , where ‘A’ is the mantissa and ‘B’ is the exponent), yielding up to 4,294,967,296 possible bit patterns (2 32 ).

The term ‘fixed point’ refers to the corresponding manner in which numbers are represented, with a fixed number of digits after, and sometimes before, the decimal point. With floating-point representation, the placement of the decimal point can ‘float’ relative to the significant digits of the number. For example, a fixed-point representation with a uniform decimal point placement convention can represent the numbers 123.45, 1234.56, 12345.67, etc, whereas a floating-point representation could in addition represent 1.234567, 123456.7, 0.00001234567, 1234567000000000, etc. As such, floating point can support a much wider range of values than fixed point, with the ability to represent very small numbers and very large numbers.

With fixed-point notation, the gaps between adjacent numbers always equal a value of one, whereas in floating-point notation, gaps between adjacent numbers are not uniformly spaced – the gap between any two numbers is approximately ten million times smaller than the value of the numbers (ANSI/IEEE Std. 754 standard format), with large gaps between large numbers and small gaps between small numbers.

Dynamic Range and Precision

The exponentiation inherent in floating-point computation assures a much larger dynamic range – the largest and smallest numbers that can be represented — which is especially important when processing extremely large data sets or data sets where the range may be unpredictable. As such, floating-point processors are ideally suited for computationally intensive applications.

It is also important to consider fixed and floating-point formats in the context of precision – the size of the gaps between numbers. Every time a DSP generates a new number via a mathematical calculation, that number must be rounded to the nearest value that can be stored via the format in use. Rounding and/or truncating numbers during signal processing naturally yields quantization error or ‘noise’ — the deviation between actual analog values and quantized digital values. Since the gaps between adjacent numbers can be much larger with fixed-point processing when compared to floating-point processing, round-off error can be much more pronounced. As such, floating-point processing yields much greater precision than fixed-point processing, distinguishing floating-point processors as the ideal DSP when computational accuracy is a critical requirement.

Key Considerations – Costs, Ease Of Development, And Performance

Dynamic range and precision considerations typically define the criteria used by designers to determine whether fixed-point or floating-point processors are ideally suited for an application – where computational demands are high, floating point is favored. But there are many other important interrelated factors to consider when choosing between the two formats.

Processor cost : A designer’s ability to lower bill of materials (BOM) costs for a product has a direct impact on competitive pricing, market penetration and profitability. Fixed-point DSPs are used in a greater number of high volume applications than floating-point DSPs, and therefore are typically less expensive that floating-point DSPs due to the scale of manufacturing. System- on-a-chip (SOC) variables, including on-board memory, integrated application-specific peripherals, and connectivity options can also affect the cost — and functionality — of both fixed-point and floating-point processors.

Читать еще:  Горячие клавиши powerpoint 2020

Ease of development : The easier it is for a designer to develop a product, the more likely it is that the product can be brought to market ahead of the competition. It is generally easier to develop algorithms for floating-point DSPs, as fixed point-algorithms require greater manipulation to compensate for quantization noise. As such, designers typically choose floating-point DSPs when implementing complex algorithms. Here again, SOC variables can shorten product development cycles, as can the ecosystem of associated product development tools and third-party support software.

Performance : The speed with which a DSP executes operations in an application is a critical consideration. Designers should implement the DSP format that will process algorithms with the greatest efficiency. While it is possible to program fixed-point code for a floating-point processor and vice versa, significant performance limitations may arise. Performance efficiency can also impact power efficiency. For example, in a case where a floating-point processor is implemented to execute fixed-point tasks, the power draw might be greater than what it would be if a fixed-point processor had been implemented, which can impact power source and cooling requirements, as well as associated BOM costs.

In summary, floating-point DSPs are optimized for specialized, computationally intensive applications, whereas fixed-point DSPs are optimized for high-volume, general purpose applications. Development costs can be higher for fixed point, owing to the relative difficulty of algorithm implementation, but the cost of the final product will often be reduced. Product costs for applications that leverage floating-point DSPs can be higher, owing to processor cost and lower manufacturing volumes, but designers will realize ease-of-development benefits and greater overall system precision. Ultimately, the data set requirements associated with the target application will dictate the need for fixed-point or floating-point processing.

Analog Devices – Leading The Industry in DSP Innovation

Delivering exceptional performance and value, and complemented by a rich ecosystem of development tools, applications and third-party support, Analog Devices’ digital signal processors are the processors of choice for a wide range of innovative applications.

ADI Blackfin ® Fixed-Point Digital Signal Processors

Analog Devices’ 16/32-bit fixed-point Blackfin digital signal processors are designed specifically to meet the computational demands and power constraints of today’s embedded audio, video and communications applications. Blackfin processors deliver breakthrough performance and power efficiency with a RISC programming model, combining advanced signal processing functionality with the ease-of-use attributes found in general-purpose microcontrollers. This combination of processing attributes enables Blackfin processors to perform equally well in both signal processing and control processing applications — in many cases eliminating the requirement for separate heterogeneous processors. This capability greatly simplifies both the hardware and software design implementation tasks.

ADI Sharc ® Floating-Point Digital Signal Processors

Analog Devices’ 32-bit floating-point SHARC digital signal processors are based on a Super Harvard architecture that balances exceptional core and memory performance with outstanding I/O throughput capabilities. This Super Harvard architecture extends the original concepts of separate program and data memory busses by adding an I/O processor with its associated dedicated busses. In addition to satisfying the demands of the most computationally intensive, real-time signal-processing applications, SHARC processors integrate large memory arrays and application-specific peripherals designed to simplify product development and reduce time to market.

Ссылка на основную публикацию
ВсеИнструменты 220 Вольт
Adblock
detector