sasamy 14 December 17, 2024 Posted December 17, 2024 · Report post 2 hours ago, RobFPGA said: А это значит что все данные, и 1G и 2x10G идут через проц, в котором и считаются счек-суммы/хэши для RAID это не значит что все или вообще хоть какие-то из дисков должны быть в raid, при использовании iSER https://en.wikipedia.org/wiki/ISCSI_Extensions_for_RDMA данные вообще мимо сетевого стека ходят https://www.qnap.ru/catalog/ts-1677x/ Quote Share this post Link to post Share on other sites More sharing options...
sasamy 14 December 17, 2024 Posted December 17, 2024 (edited) · Report post 4 hours ago, RobFPGA said: И да, ЦП на то и Центральный Процессор что он на шине "самый главный и приоритетный". вообще нелогично и на arm системах ровно наоборот - аппаратные ускорители намного мощней, а ЦПУ это дохленький манипулятор. Cкоро для GPU вообще не нужен будет CPU. Edited December 17, 2024 by sasamy Quote Share this post Link to post Share on other sites More sharing options...
khach 56 December 17, 2024 Posted December 17, 2024 · Report post От хардверного raid вроде отказались из за появления кеширования на SSD- скорость доступа больше стала, PCI-e непосредственно в NVME, По поводу обхода потока данных ЦПУ, возможно я не совсем правильно понял рекламный спич. Вот цитата. Цитата Сетевые хранилища TS-1677X оснащены двумя 10 гигабитными портами SFP+ и поддерживают протокол iSCSI Extensions for RDMA (iSER), что позволяет обходить уровни драйверов и сокетов и напрямую обмениваться блоками данных между оперативной памятью сервера ESXi и хранилища. Эта технология позволяет снизить нагрузку на центральный процессор и более эффективно использовать имеющуюся полосу пропускания канала передачи данных. Поддержка ISER для сервера VMware и TS-1677X, обеспечивает прирост скорости на операциях записи/чтения до 60% и сокращает задержки до 50%. Использование NAS с поддержкой данной технологии является одним из инструментов оптимизации работы приложений виртуализации. Как оно запихивает данные в диски, тем более если используются внешние expandable modules, самому интересно, как происходит арбитраж шины. Quote Share this post Link to post Share on other sites More sharing options...
sasamy 14 December 18, 2024 Posted December 18, 2024 · Report post 5 hours ago, khach said: SSD- скорость доступа больше стала, PCI-e непосредственно в NVME 5 hours ago, khach said: Как оно запихивает данные в диски через p2pdma скорей всего https://github.com/sbates130272/p2pmem-test Quote Share this post Link to post Share on other sites More sharing options...
quаrk 41 December 18, 2024 Posted December 18, 2024 · Report post В 16.12.2024 в 18:39, sasamy сказал: какие ваши доказательства ? На самом деле, доказательства должны быть с вашей стороны. Что вы, при использовании DMA совместно с виндой, гарантированно не окажетесь "в пролете". И даже не мне, а наверное своему заказчику. Или хотя бы самому себе. Quote Share this post Link to post Share on other sites More sharing options...
sasamy 14 December 18, 2024 Posted December 18, 2024 (edited) · Report post 1 hour ago, quаrk said: Что вы, при использовании DMA совместно с виндой, гарантированно не окажетесь "в пролете". не только с вендой - двухканальные контроллеры памяти могут работать в двух режимах - 1х128 (ganged) и 2х64 (unganged), если зарезервировать половину памяти для DMA в unganged режиме венда и любая другая ОС в этот канал вообще не будет обращатьсяи мешать, это два независимых контроллера памяти с разными физическими модулями памяти. https://www.techpowerup.com/253929/intel-ice-lake-gpu-docs-reveal-unganged-memory-mode Edited December 18, 2024 by sasamy Quote Share this post Link to post Share on other sites More sharing options...
quаrk 41 December 18, 2024 Posted December 18, 2024 · Report post 7 минут назад, sasamy сказал: не только с вендой - двухканальные контроллеры памяти могут работать в двух режимах - 1х128 (ganged) и 2х64 (unganged), если зарезервировать половину памяти для DMA в unganged режиме венда и любая другая ОС в этот канал вообще не будет обращатьсяи мешать, это два независимых контроллера памяти с разными физическими модулями памяти. Дело не только в том, кто куда обращается. И сколько физически независимых контроллеров. Если физический интерфейс к памяти один (общий), то они смогут работать только по очереди. Quote Share this post Link to post Share on other sites More sharing options...
sasamy 14 December 18, 2024 Posted December 18, 2024 · Report post 47 minutes ago, quаrk said: Если физический интерфейс к памяти один (общий), то они смогут работать только по очереди. Quote For integrated graphics, unganged mode is a real killer application though. The iGPU reserves a chunk of system memory for geometry, textures and framebuffer. This memory range is typically placed at the end of the physical memory space, whereas the Windows OS and applications usually are located near the start of physical memory. This effectively gives the GPU its own dedicated memory controller, which also reduces memory latency, because one controller can hold the IGP's memory pages open almost all the time, whereas the second controller takes care of the OS and application memory requests. похоже с вами бесполезно говорить а тем более доказывать Quote Share this post Link to post Share on other sites More sharing options...
quаrk 41 December 18, 2024 Posted December 18, 2024 · Report post 5 минут назад, sasamy сказал: тем более доказывать Если Вы себе все доказали, то вопросов больше нет. Quote Share this post Link to post Share on other sites More sharing options...
khach 56 December 18, 2024 Posted December 18, 2024 · Report post Вот только механизмов управления таким доступом под виндой у пользователя или сисадмина маловато. Кое что встречается в настройках драйверов GPU , но этого обычно очень мало, не описано, практически не масштабируется на новые версии винды, т.е любой апгрейд винды может сломать механизм прямого доступа нафиг. А смена материнки на другой чипсет- вообще катастрофа. Quote Share this post Link to post Share on other sites More sharing options...
sasamy 14 December 18, 2024 Posted December 18, 2024 · Report post 9 minutes ago, khach said: Вот только механизмов управления таким доступом под виндой у пользователя или сисадмина маловато. Quote Я резервирую кусок физической памяти на компьютере для использования только нашим устройством, выполнив в командной строке от Администратора команду следующего вида: bcdedit /set removememory Х(Х — сколько мегабайт зарезервировать) Таким образом, последние мегабайты скрыты от Windows, и обращаться к ним Винда не может. Помимо гарантии отсутствия столкновений на memory bus, таким образом решается ещё несколько проблем, в частности, отсутствует нужда в синхронизации доступа, что лишает меня необходимости использовать долгие и медленные семафоры и мьютексы. в Linux Quote mem=nn[KMG] [KNL,BOOT] Force usage of a specific amount of memory Amount of memory to be used when the kernel is not able to see the whole system memory or for test. [X86] Work as limiting max address. Use together with memmap= to avoid physical address space collisions. Without memmap= PCI devices could be placed at addresses belonging to unused RAM. но можно ещё вагон и тележку придумать с DT Quote Share this post Link to post Share on other sites More sharing options...
khach 56 December 18, 2024 Posted December 18, 2024 · Report post 11 минут назад, sasamy сказал: Я резервирую кусок физической памяти на компьютере для использования только нашим устройством, выполнив в командной строке от Администратора команду следующего вида: bcdedit /set removememory Х(Х — сколько мегабайт зарезервировать) А попробуйте так внутреннюю память например GPU карты зарезервировать, чтобы в нее DMA кидал данные напрямую с внутреннего буфера SSD диска? Облом будет. Я тут еще упрощаю, т.к тут чтение с диска рассматривается. а не запись. Вот поэтому и приходится покупать дорогущие NAS, где есть хоть какая то документация и поддержка производителя. При этом задача не для сервера, мощный процессор не требуется, все равно обработка на GPU идет. Типа как тут https://www.tomshardware.com/pc-components/gpus/gpus-get-a-boost-from-pcie-attached-memory-that-boosts-capacity-and-delivers-double-digit-nanosecond-latency-ssds-can-also-be-used-to-expand-gpu-memory-capacity-via-panmnesias-cxl-ip Quote Share this post Link to post Share on other sites More sharing options...
sasamy 14 December 18, 2024 Posted December 18, 2024 · Report post 8 hours ago, khach said: Вот поэтому и приходится покупать дорогущие NAS, где есть хоть какая то документация и поддержка производителя. это qnap чтоли предлагаете ? там встроенного GPU вообще нет, БП всего 550 Вт это только для игрушек начального уровня Quote QNAP TS-1677X оснащаются более мощными блоками питания 550Вт, что позволяет устанавливать современные графические карты PCIe на базе чипсетов AMD Radeon и NVidia. стоит там debian, драйверы и поддержка в любом случае от производителей видеокарт - какая там документация ? там единственное разных внешних интерфейсов поболее среднего по больнице Quote Share this post Link to post Share on other sites More sharing options...
quаrk 41 December 18, 2024 Posted December 18, 2024 · Report post В 14.12.2024 в 16:19, sasamy сказал: https://habr.com/ru/articles/652291/ ... пусть плата пишет в пять буферов с разницей в 200 микросекунд; зная, что в нулевой буфер она писала в целое число миллисекунд, я буду читать буферы с отставанием на один: в целую миллисекунду — четвёртый, в миллисекунду и 200 микросекунд — нулевой, в миллисекунду и четыреста микросекунд — первый, и так далее... ... Время обработки одного пакета данных при таких условиях не превышает 155 микросекунд, включая добавление заголовков к каждому пакету данных. Затем данные передаются из зарезервированной памяти в программу обработки, которая уже заботится о передаче данных в GPU... Объясните, пожалуйста, напоследок... Как Вы собираетесь одновременно писать и читать из одной и той же области зарезервированной памяти? Параллельно Вы это сделать не сможете. Физический интерфейс к этой области памяти один. Если он занят 155 мкс из 200 мкс платой, которая через DMA пишет данные, то на чтение остается не более 45мкс. Не имеет значения, каким именно способом, с помощью какого физического устройства читаете - CPU, другого контроллера DМА или еще как-то. Или у вас все пять буферов в разных областях памяти - каждая со своим отдельным физическим интерфейсом? Quote Share this post Link to post Share on other sites More sharing options...
sasamy 14 December 19, 2024 Posted December 19, 2024 · Report post 7 hours ago, quаrk said: Параллельно Вы это сделать не сможете. Физический интерфейс к этой области памяти один. Если он занят 155 мкс из 200 мкс платой, которая через DMA пишет данные, то на чтение остается не более 45мкс. вы пропускную способность памяти в микросекундах измеряете ? Даже если один пишет на скорости Quote Поэтому всё это богатство данных, помимо показа на экране, придётся записывать на жёсткий диск. Все 1,3 гигабайта данных в секунду. второму надо столько же прочитать, в сумме 2.6 гигабайт в секунду https://ru.wikipedia.org/wiki/DDR4_SDRAM#Пропускная_способность даже у самой младшей ddr4 12.8 гигабайт в секунду, даже с учётом задержек это кратно больше Quote Share this post Link to post Share on other sites More sharing options...