Я пытаюсь оценить производительность моего научного программного обеспечения с помощью Process Explorer, с файлами как локально на нашем blade-сервере (Dell VRTx, Windows Server 2012), так и по сети с другого компьютера с Windows (компьютера с Windows 7). Я обнаружил, что при сравнении локальных и сетевых операций производительность падает, что имеет смысл. Чего я не понимаю, так это того, что при запуске программного обеспечения с использованием данных на сетевом общем ресурсе компьютера все операции начинаются с использования блоков 4k вместо блоков 1.2k, которые я видел, когда данные были локальными для машины.
Есть ли что-то в TCP или SMB, которое контролирует размер блока для операций чтения / записи с компьютера на NAS? Будет ли это как-то связано с буферизацией TCP? Данные ниже, заранее спасибо за любую помощь.
Программное обеспечение работает с данными на локальном диске
- Средний размер блока записи: 3894 КБ
- Средний размер блока чтения: 1162kB
- Макс. Скорость ввода-вывода: 535,24 МБ / с
- Макс. Частота запросов процессора: 24677,33 млн. Циклов / сек
Программное обеспечение работает с данными на сетевом общем компьютере
- Средний размер блока записи: 3900
- Средний размер блока чтения: 3900
- Макс. Скорость ввода-вывода: 141,88 МБ / с
- Максимальная скорость спроса на процессор: 12000,14 мил циклов / сек
Заранее спасибо.