1. Основные тенденции
Современные технологии развиваются по направлениям:
- Миниатюризация (уменьшение размеров устройств).
- Рост производительности (закон Мура: число транзисторов на чипе удваивается каждые 2 года).
- Параллелизм (переход от одноядерных к многоядерным процессорам).
- Распределённые системы (вычисления на множестве компьютеров).
- Big Data (обработка огромных объёмов данных).
2. Параллельные вычисления
Определение: Одновременное выполнение нескольких операций.
Цель: Ускорение вычислений.
Типы параллелизма:
| Тип | Пример |
|---|---|
| По инструкциям | Конвейерная обработка |
| По данным | Обработка массива данных |
| По задачам | Запуск независимых программ |
Схема:
graph LR A[Задача] --> B[Подзадача 1] A --> C[Подзадача 2] A --> D[Подзадача 3] B --> E[Результат 1] C --> F[Результат 2] D --> G[Результат 3] E --> H[Объединение] F --> H G --> H H --> I[Итог]
3. Многопроцессорные системы
Определение: Несколько процессоров в одном корпусе с общей памятью.
Архитектуры:
| Тип | Описание | Плюсы / Минусы |
|---|---|---|
| SMP (симметричная) | Все процессоры равноправны | Простота / Медленная шина |
| NUMA (асимметричная) | Локальная память у каждого процессора | Быстродействие / Сложность |
Схема SMP:
graph TD CPU1[Процессор 1] --> RAM[Общая память] CPU2[Процессор 2] --> RAM CPU3[Процессор 3] --> RAM
4. Распределённые системы и Big Data
Распределённая система: Географически разнесённые компьютеры, связанные сетью.
Примеры: Банковские системы, облака (Google Cloud), блокчейн.
Big Data: Характеристики (5V)
| Параметр | Описание |
|---|---|
| Volume | Большой объём (терабайты) |
| Velocity | Высокая скорость генерации данных |
| Variety | Разнородные данные (текст, видео) |
| Veracity | Достоверность данных |
| Value | Ценность результата |
Технологии: Hadoop, Spark, NoSQL (MongoDB).
Схема распределённой системы:
graph LR Client[Клиент] --> Server1[Сервер 1] Client --> Server2[Сервер 2] Client --> Server3[Сервер 3] Server1 --> DB[(База данных)] Server2 --> DB Server3 --> DB
Формулы
1. Ускорение при параллельных вычислениях (закон Амдала):
$$ S = \frac{1}{(1 — P) + \frac{P}{N}} $$
Где \( S \) — ускорение, \( P \) — доля параллельного кода, \( N \) — число процессоров.
2. Закон Мура:
$$ \text{Транзисторы} = 2^{(t / 2)} $$
\( t \) — время в годах.