
http://aptem.net.ru/nets/servkorp/contents.htm
Серверы корпоративных баз данных
Проблемы выбора аппаратно-программной платформы и конфигурации сервера базы данных
Введение
Проблемы оценки конфигурации системы
Основы конфигурирования серверов баз данных
Характеристики рабочей нагрузки (тесты TPC)
Что такое TPC
Выбор конфигурации сервера СУБД
Предпосылки выбора
Выбор вычислительной модели
Мониторы обработки транзакций
Гибкость доступа к данным
Вопросы производительности
Подсистема основной памяти
Выбор размера буфера ввода/вывода СУБД
Дополнительные требования к памяти
Процессоры
Дисковые подсистемы ввода/вывода
Соотношение запрос/индекс/диск
Емкость и пропускная способность дисковой памяти
Файловые системы по сравнению с "чистыми" (неструктурированными) дисками
Метаданные СУБД
Распределение данных
Использование ресурсов ввода/вывода
Сетевая подсистема ввода/вывода
Соображения по использованию режима клиент/сервер
Большие объекты данных
Конфигурация клиент/сервер и региональные сети
Трафик символьного терминала
Заключительные рекомендации по конфигурированию сетевого ввода/вывода
PrestoServe/NVSIMM
Обеспечение резервного копирования
Когда необходимо выполнять резервное копирование?
Резервное копирование в режиме online
Продолжительность резервного копирования
Использование зеркалирования дисков для облегчения резервного копирования
Частота резервного копирования
Утилиты резервного копирования
Отслеживание и проверка резервных копий
Определение минимальной конфигурации системы на основе анализа основных транзакций
Пример 1
Пример 2
Предостережения
Основы организации вычислительных систем
Процессоры
Архитектура системы команд. Классификация процессоров (CISC и RISC)
Конвейерная организация
Простейшая организация конвейера и оценка его производительности
Структурные конфликты и способы их минимизации
Конфликты по данным, остановы конвейера и реализация механизма обходов
Сокращение потерь на выполнение команд перехода и минимизация конфликтов по управлению
Проблемы реализации точного прерывания в конвейере
Конвейерная и суперскалярная обработка
Параллелизм на уровне выполнения команд, планирование загрузки конвейера и методика разворачивания циклов
Аппаратное прогнозирование направления переходов и снижение потерь на организацию переходов
Одновременная выдача нескольких команд для выполнения и динамическое планирование
Архитектура машин с длинным командным словом
Аппаратные средства поддержки большой степени распараллеливания
Подсистема памяти
Введение
Организация кэш-памяти
Принципы организации основной памяти в современных компьютерах
Общие положения
Увеличение разрядности основной памяти
Память с расслоением
Использование специфических свойств динамических ЗУПВ
Виртуальная память и организация защиты памяти
Концепция виртуальной памяти
Страничная организация памяти
Сегментация памяти
Организация ввода/вывода
Системные и локальные шины
Устройства ввода/вывода
Основные типы устройств ввода/вывода
Магнитные и магнитооптические диски
Дисковые массивы и уровни RAID
Устройства архивирования информации
Многопроцессорные системы
Классификация систем параллельной обработки данных
Многопроцессорные системы с общей памятью
Многопроцессорные системы с локальной памятью и многомашинные системы
Технические характеристики современных серверов
Симметричные мультипроцессорные системы компании Bull
Архитектура процессоров PowerPC
Проблемы реализации SMP-архитектуры
Описание архитектуры PowerScale
Семейство UNIX-серверов Escala
Серверы компании DEC
Семейство компьютеров Alpha
Серверы на базе Alpha
AlphaServer 8400
AlphaServer 8200
AlphaServer 2100
AlphaServer 2000
AlphaServer 1000
AlphaServer 400
Серверы компании Hewlett-Packard
Серверы HP9000 класса D
Серверы HP9000 класса K
Симметричные многопроцессорные серверы HP9000 класса Т
Семейство корпоративных параллельных серверов HP9000
Серверы компании IBM
Модели C10 и C20 RISC System/6000
Серверы серии 500 RISC System/6000
Модели G40 Server RS/6000
Модели J40 Server RS/6000
Системы SP1 и SP2
Серверы компании Silicon Graphics
Challenge S
Challenge DM
Challenge L
Challenge XL
Challenge DataArray
Серверы компании Sun Microsystems
SPARCserver 4
SPARCserver 5
SPARCserver 20
SPARCserver 1000/1000E
SPARCcenter 2000/2000E
SPARCcluster PDB server
Ultra Enterprise 1
Ultra Enterprise 2
Ultra Enterprise 3000 и Ultra Enterprise 4000
Ultra Enterprise 5000 и Ultra Enterprise 6000
Отказоустойчивые серверы компании Tandem Computer Inc.
Введение
Архитектура систем NonStop
Архитектура систем Integrity
Архитектура системы на базе ServerNet
ServerNet
Процессорный модуль
Организация ввода/вывода
Дуплексная работа
Возможности масштабирования системы
Система обслуживания
Инициализация
Программное обеспечение
Первые системы Tandem на базе технологии ServerNet
Заключение
Приложение. Современные микропроцессоры
Процессоры с архитектурой 80x86 и Pentium
Особенности процессоров с архитектурой SPARC компании Sun Microsystems
SuperSPARC
hyperSPARC
MicroSPARC-II
UltraSPARC
Процессоры PA-RISC компании Hewlett-Packard
Особенности архитектуры MIPS компании MIPS Technology
Особенности архитектуры Alpha компании DEC
Особенности архитектуры POWER компании IBM и PowerPC компаний Motorola, Apple и IBM
Архитектура POWER
Эволюция архитектуры POWER в направлении архитектуры PowerPC
Подсистема памяти
Введение
В основе реализации иерархии памяти современных компьютеров лежат два принципа: принцип локальности обращений и соотношение стоимость/производительность. Принцип локальности обращений говорит о том, что большинство программ к счастью не выполняют обращений ко всем своим командам и данным равновероятно, а оказывают предпочтение некоторой части своего адресного пространства.
Иерархия памяти современных компьютеров строится на нескольких уровнях, причем более высокий уровень меньше по объему, быстрее и имеет большую стоимость в пересчете на байт, чем более низкий уровень. Уровни иерархии взаимосвязаны: все данные на одном уровне могут быть также найдены на более низком уровне, и все данные на этом более низком уровне могут быть найдены на следующем нижележащем уровне и так далее, пока мы не достигнем основания иерархии.
Иерархия памяти обычно состоит из многих уровней, но в каждый момент времени мы имеем дело только с двумя близлежащими уровнями. Минимальная единица информации, которая может либо присутствовать, либо отсутствовать в двухуровневой иерархии, называется блоком. Размер блока может быть либо фиксированным, либо переменным. Если этот размер зафиксирован, то объем памяти является кратным размеру блока.
Успешное или неуспешное обращение к более высокому уровню называются соответственно попаданием (hit) или промахом (miss). Попадание - есть обращение к объекту в памяти, который найден на более высоком уровне, в то время как промах означает, что он не найден на этом уровне. Доля попаданий (hit rate) или коэффициент попаданий (hit ratio) есть доля обращений, найденных на более высоком уровне. Иногда она представляется процентами. Доля промахов (miss rate) есть доля обращений, которые не найдены на более высоком уровне.
Поскольку повышение производительности является главной причиной появления иерархии памяти, частота попаданий и промахов является важной характеристикой. Время обращения при попадании (hit time) есть время обращения к более высокому уровню иерархии, которое включает в себя, в частности, и время, необходимое для определения того, является ли обращение попаданием или промахом. Потери на промах (miss penalty) есть время для замещения блока в более высоком уровне на блок из более низкого уровня плюс время для пересылки этого блока в требуемое устройство (обычно в процессор). Потери на промах далее включают в себя две компоненты: время доступа (access time) - время обращения к первому слову блока при промахе, и время пересылки (transfer time) - дополнительное время для пересылки оставшихся слов блока. Время доступа связано с задержкой памяти более низкого уровня, в то время как время пересылки связано с полосой пропускания канала между устройствами памяти двух смежных уровней.
Чтобы описать некоторый уровень иерархии памяти надо ответить на следующие четыре вопроса:
1. Где может размещаться блок на верхнем уровне иерархии? (размещение блока).
2. Как найти блок, когда он находится на верхнем уровне? (идентификация блока).
3. Какой блок должен быть замещен в случае промаха? (замещение блоков).
4. Что происходит во время записи? (стратегия записи).
Организация кэш-памяти
Концепция кэш-памяти возникла раньше чем архитектура IBM/360, и сегодня кэш-память имеется практически в любом классе компьютеров, а в некоторых компьютерах - во множественном числе.
Все термины, которые были определены раньше могут быть использованы и для кэш-памяти, хотя слово "строка" (line) часто употребляется вместо слова "блок" (block).
Размер блока (строки) |
4-128 байт |
Время попадания (hit time) |
1-4 такта синхронизации (обычно 1 такт) |
Потери при промахе (miss penalty) (Время доступа - access time) (Время пересылки - transfer time) |
8-32 такта синхронизации (6-10 тактов синхронизации) (2-22 такта синхронизации) |
Доля промахов (miss rate) |
1%-20% |
Размер кэш-памяти |
4 Кбайт - 16 Мбайт |
Рис. 3.21. Типовые значения ключевых параметров для кэш-памяти рабочих станций и серверов
На рисунке 3.21 представлен типичный набор параметров, который используется для описания кэш-памяти.
Рассмотрим организацию кэш-памяти более детально, отвечая на четыре вопроса об иерархии памяти.