簡體   English   中英

在C中為並行編程openmp和mpi分配內存的最佳方法

[英]best way to allocate memory in C for parallel programming openmp and mpi

如果要編寫C代碼而不是C ++,並且要使用openmp指令編寫並行程序,那么分配內存的最佳方法是什么? 我已經習慣了傳統的malloc()和calloc(),但我也遇到過

#include <sys/sem.h>

用於做信號量。 一個比另一個好還是壞?

我正在考慮編寫的程序將使用大量RAM,數量級為256GB或更多。 而且它還將讀取/寫入大於4GB的暫存文件。 因此,我不會使用lseek()命令的32位版本,而是會使用lseek64() 考慮到所有這些,有人可以提供有關編寫此類程序的最佳方法的建議嗎? 我很早以前就已經學過openmp了,這通常足以在具有足夠內存的單個系統上運行,但是我提到了MPI,因為我可以學習並使用它,如果它可以使所有內容變得更健壯和可移植。 或其他使用C進行並行編程的方法

考慮使用mmap和mremap來更快地重新映射內存,因為mremap()使用Linux頁表方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM