Я работаю над частью научного программного обеспечения, которое очень интенсивно использует процессор (его привязка к процессу), но ему необходимо довольно часто записывать данные на диск (привязка ввода-вывода).
Я добавляю к этому распараллеливание (OpenMP), и мне интересно, как лучше всего удовлетворить потребности записи на диск. Нет причин, по которым симуляция должна ждать на жестком диске (что она и делает сейчас).
Я ищу «лучшую практику» для этого, и меня больше всего волнует скорость (это могут быть очень длинные симуляции).
Спасибо ~ Алекс
Первые мысли:
наличие отдельного процесса, выполняющего фактическую запись на диск, поэтому симуляция состоит из двух процессов: один связан с процессором (моделирование), а другой связан с вводом-выводом (запись файла). Это звучит сложно.
Возможно труба/буфер? Я новичок в этом, так что, возможно, это может быть возможным решением.