資源簡介
并行計算課程實驗代碼,c語言寫的,在MacOS系統(tǒng)下的openmp的pi值計算和PSRS的實現(xiàn),注釋清晰,且PSRS處理了不整除的情況。懶得編譯可使用我提供的run.sh腳本。加上待編譯的文件作為參數(shù)即可。
代碼片段和文件信息
#include?
#include?
#include?
#include?
#define?INIT_TYPE?10
#define?ALLTOONE_TYPE?100
#define?ONETOALL_TYPE?200
#define?MULTI_TYPE?300
#define?RESULT_TYPE?400
#define?RESULT_LEN?500
#define?MULTI_LEN?600
int?Spt;//Spt=處理器數(shù)-1即p-1
long?DataSize;//數(shù)據(jù)總個數(shù),即n
int?*arr*arr1;//存儲數(shù)據(jù)的數(shù)組
int?mylength;//每個處理器,處理的數(shù)據(jù)的長度。mylength=DataSize/SumID,即n/p
int?*index;//index計算主元間的數(shù)據(jù)個數(shù)即下標
int?*temp1;//臨時存儲變量,作用很多
/*輸出錯誤信息*/
void?merror(char*?ch)
{
????printf(“%s\n“ch);
????exit(1);
}
/*串行快速排序算法*/
void?quicksort(int?*datasint?bbint?ee)
{
????int?ttij;
????tt?=?datas[bb];
????i?=?bb;
????j?=?ee;
????if?(i ????{
????????while(i ????????{
????????????while?((i ????????????if?(i ????????????{
???
評論
共有 條評論