1 / 101

Транспьютеры

Транспьютеры. What is Transputer ?. Транспьютер ( англ. transputer ) — элемент построения много процессорных систем, выполненный на одном кристалле большой интегральной схемы

olwen
Download Presentation

Транспьютеры

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Транспьютеры

  2. What is Transputer? • Транспьютер (англ.transputer) — элемент построения многопроцессорных систем, выполненный на одном кристалле большой интегральной схемы • Transistor Computer. Goal was produce low cost low power chips to form a complete processor, just as transistors had earlier • The first single chip computer designed for message-passing parallel systems, in 1980s, by the company INMOS (ныне — подразделение STMicroelectronics).

  3. Transputer Versions • First generation 16 bit transputers: T212  T222  T225 32 bit transputers without a floating unit: T400  T414  T425  T426 32 bit transputers with a floating unit : T800  T801  T805 All have the same architecture, similar instruction sets and fully compatible communications links. Second Generation 64 bit transputer with a floating unit : T9000 Although general architecture much the same, it is a new design and is much more complex chip then its predecessors.

  4. Транспьютер Т800 и коммутатор С004

  5. Транспьютерная материнская плата МТБ-8

  6. TRANSPUTER ARCHITECTURE

  7. TRANSPUTER ARCHITECTURE

  8. Transputer Memory Map

  9. What is a GPU? “A Graphics Processing Unit or GPU (also occasionally called Visual Processing Unit or VPU) is a dedicated graphics rendering device for a personal computer or game console. Modern GPUs are very efficient at manipulating and displaying computer graphics, and their highly-parallel structure makes them more effective than typical CPUs for a range of complex algorithms.” - Definition from wikipedia.org • Radeon 9800 Pro

  10. History of GPUs • The pre-GPU era • VGAs in the 80s • 4 (or even 5) generations of GPUs in the last decade • Fixed functions vs. programmability • API support • OpenGL, Direct3D (v6.0 to v9.0) • Shader models (v1.0 – v3.0)

  11. Предыстория к GPGPU GPU Шейдеры Видео- ускоритель Сопроцессор 1990 1995 2000 2005 2010

  12. Why shifting from CPU to GPU? • Why not just keep increasing the CPU speed and leave the GPU to handle what is its best? • CPU speed is reaching a bottle neck (how many transistors can be integrated on a chip) • Solution, in the future, nano technology, short term, dual core machines (double CPUs), clustered CPUs, …, even grid computing and supercomputing • GPU facing the same problem, but still have space to press on due to its task specific designs and parallelism paradigm

  13. Существующие многоядерные системы Посмотрим на частоты CPU: • 2004 г. - Pentium 4, 3.46 GHz • 2005 г. - Pentium 4, 3.8 GHz • 2006 г. - Core Duo T2700, 2333 MHz • 2007 г. - Core 2 Duo E6700, 2.66 GHz • 2007 г. - Core 2 Duo E6800, 3 GHz • 2008 г. - Core 2 Duo E8600, 3.33 Ghz • 2009 г. - Core i7 950, 3.06 GHz

  14. Мотивация: Вычислительная Мощность Courtesy Ian Buck, John Owens

  15. An Aside: Вычислительная мощность • Почему GPU становятся мощнее так быстро? • Арифметика : особенности архитектуры GPUs позволяют относительно просто использовать дополнительныетранзисторы для вычислений, а не для кэша • Экономика : Многомиллиардная индустрия компьютерных игр вкладывает деньги в разработку все более совершенных GPU

  16. Мотивация: ГибкостьиТочность • Современные GPUs хорошопрограммируемы • Программируемыепиксельные, вершинные, видеопроцессоры • Установившаясяподдержка высокоуровневых языков программирования • Современные GPUs обеспечиваютвысокую точность вычислений • Аппаратная поддержка чисел с плавающей точкой одинарной точности (32 бита). Что достаточно много для многих(не всех) приложений

  17. Мотивация: Потенциал GPGPU • Кратко: • Гибкость и мощность GPUs делает их привлекательными длявычислений общего назначения • Сфера применения GPGPU очень широка – от алгоритмов компьютерной графики, таких как задача глобального освещения, до задач численных методов и ММС. • Цель: сделать доступными разработчикам недорогую вычислительную мощность GPU как вычислительного сопроцессора

  18. Проблемы: Сложность использования • GPUs разработаны для & направляемыкомпьютерными играми • Необычная модель программирования • Идиомы программированиясвязаны скомпьютерной графикой • Среда программирования сильно ограничена • Архитектура: • Высоко параллельная • Быстрое развитие • Нельзя просто “перенести”CPU код на GPU!

  19. Основы GPU :КлассическийГрафический Конвейер CPU • Упрощенный графический конвейер • Отметим что конвейер варьируем • Кэши, Списки и многое другое не показано GPU Graphics State Экранные треугольники (2D) Итоговые пиксели (Цвет, Глубина) Фрагменты (pre-pixels) Освещенные вершины (2D) Приложение Трансформация& Свет Сборка примитивов Растериза- ция Тени вершины (3D) Память ВК (Текстуры) Рендеринг в текстуру

  20. Программируемый вершинный процессор! Основы GPU : Современный Графический Конвейер CPU GPU Graphics State ВершинныеПроцессоры Освещенный вершины (2D) Фрагменты (pre-pixels) Итоговые пиксели (цвет, глубина) Экранные треугольники(2D) Приложение Transform Сборка Примитивов Растериза- ция Shade Вершины (3D) Память ВК (Текстуры) Рендеринг в текстуру • Программируемый фрагментный процессор!

  21. GPU Конвейер: Преобразования • Вершинный процессор (несколько параллельных) • Преобразования из глобальной системы координат в систему координат изображения • Повершенное вычисление света

  22. Программируемая сборка примитивов! Графический Конвейер последнего поколения CPU GPU Graphics State Геометрический процессор Xformed, Lit Vertices (2D) Screenspace triangles (2D) Фрагменты(pre-pixels) Итоговые пиксели (Цвет, глубина) Приложение Вершинный процессор AssemblePrimitives Растериза- ция Фрагментный Процессор Вершины (3D) Текстуры Рендеринг в текстуру • Более гибкая адресация памяти!

  23. GPU Конвейер: Растеризация • Растеризатор • Перевод геометрического пр. (вершины) в плоское пр. (фрагменты) • Фрагмент = фрагмент изображения • Пиксель + связанные с ним данные: цвет, глубина, трафарет, etc. • Интерполирование повершенных данных через пиксели

  24. Программируемая сборка примитивов! Графический Конвейер последнего поколения CPU GPU Graphics State Фрагментный процессор Xformed, Lit Vertices (2D) Screenspace triangles (2D) Фрагменты(pre-pixels) Итоговые пиксели (Цвет, глубина) Приложение Вершинный процессор AssemblePrimitives Растериза- ция Фрагментный Процессор Вершины (3D) Текстуры Рендеринг в текстуру • Более гибкая адресация памяти!

  25. GPU Конвейер: Тени • Фрагментный процессор (несколько параллельных) • Вычисление цвета для каждого пикселя • Возможность чтения из текстур (изображений)

  26. Программируемая сборка примитивов! Графический Конвейер последнего поколения CPU GPU Graphics State Xformed, Lit Vertices (2D) Screenspace triangles (2D) Фрагменты(pre-pixels) Итоговые пиксели (Цвет, глубина) Пиксельный процессор Приложение Вершинный процессор AssemblePrimitives Растериза- ция Фрагментный Процессор Вершины (3D) Текстуры Рендеринг в текстуру • Более гибкая адресация памяти!

  27. Deep Pipelines • think assembly line conveyer belt Vertex Shader Triangle Setup Fragment Shader Fragment Blender Frame- Buffer(s) Deep Pipelines

  28. Wide Pipelines (many conveyor belts) Vertex Shader Triangle Setup Fragment Shader Fragment Blender Frame- Buffer(s) Wide Pipelines Deep Pipelines

  29. Parallelism, Parallelism, Parallelism • Deep/Wide pipelines allow memory latency to be hidden. • If one fragment(or vertex) is waiting on a memory fetch, go work on another element for a while. • Don’t need expensive huge caches (unlike CPU’s) • Fill precious chip space with arithmetic logic units (ALU).

  30. The Big Bandwidth Bugaboo • Moving Data is expensive http://graphics.tomshardware.com/graphic/20040310/index.html CPU L1 L2 GPU 6.4 GB/sec DMA AGP Mem Main Memory Video Memory

  31. General Purpose Computing (GPGPU) • What’s the GPU good for? • Everything you can get it to do efficiently for you!!! • Physics • Collision Detection • AI • And yes, graphics too… Cullide: Naga Govindaraju et. al Skyworks, Mark Harris

  32. 0,1 1,1 0,0 1,0 General Purpose Computing • Texture Maps are arrays of data elements • Fragment Program is an “instruction” • Frame buffer holds the result of the SIMD operation m Fragment Program n m n m n Framebuffer Texture Maps (Multiple Data) ScreenFilling Quadrilateral Fragment Program (Single Instruction) Single Instruction Multiple Data/ Stream Processor

  33. Квантовый компьютер • Квантовый компьютер – гипотетическое вычислительное устройство, которое путем выполнения квантовых алгоритмов существенно использует при работе квантово механические эффекты, такие как квантовый параллелизм и квантовая запутанность.

  34. Квантовый компьютер • Основная идея квантового вычисления состоит в том, чтобы хранить данные в ядрах атомов, изменяя их ориентацию в пространстве. Элементарная ячейка такого компьютера получила название квантовый бит (quantum bit = кубит). В отличие от привычной нам единицы информации - бита (binary digits = bits), который может принимать только два значения или "0" или "1", квантовый бит в соответствии с принципом неопределенности, постулируемым квантовой механикой, может находиться одновременно в состоянии и "0", и "1".

  35. Постановка задачи • Кубит является основным рабочим элементом квантового компьютера, физически реализуется в виде двухуровневой квантовой системы, например фотона, атома, донора в полупроводнике, ядерного спина, серхпроводящего контура • Важнейшей характеристикой кубита является время декогерентности • Наиболее перспективные устройства для реализации квантового компьютера - кубиты на основе джозефсоновских переходов M. Nakahara and T. OhmiQuantum computing: from linear algebra to physical realizations. – London, 2008 Проблемы: - измерение скоростей релаксации кубита - управление динамикой кубитов в сильном переменном поле - измерения состояния кубита в условиях шума

More Related