24小时热门版块排行榜    

查看: 500  |  回复: 0

普朗特的涡

铁虫 (小有名气)

[求助] 使用Parallel并行编程总是报错

楼主最近在学习Parallel Studio,用的Parallel Studio XE 20·6,装在VS2015上的,参考那本《Intel Parallel Studio环境下的并行程序设计》学习。
先是在使用Amplifier的时候提示这个错误:
Collection failed
[Instrumentation Engine]:SYSCALL_INSPECTOR:Too long trace in the NTDLL!NtSetContextThread function Incompatible operating system or incompatible software installed on the system Pin is exiting due to fatal error

而后在把for换成cilk_for的时候,之前已经引入了#include "cilk/cilk.h"头文件,VS右侧外部引入也显示了这个,但cilk_for函数还是一直报错,提示 错误:未定义标识符“_Cilk_for”

小弟已经纠结一晚上了怎么都搞不定QAQ

最后附上程序源码:
// ConsoleApplication4.cpp : 定义控制台应用程序的入口点。
//


#include "stdafx.h"
#include "stdio.h"
#include "cilk/cilk.h"
#include "windows.h"
#include "mmsystem.h"
#include "math.h"
#pragma comment(lib, "winmm.lib"
const long int VERYBIG = 10000;




int main(void)
{

        int i;
        long int  k, sum;
        double sumx, sumy, total;
        DWORD starttime;
        DWORD elapsedtime;

        printf("None Parallel Timings for %d iterations\n\n", VERYBIG);

        for (i = 0; i < 6; i++) {
                starttime = timeGetTime();

                sum = 0;
                total = 0.0;
                cilk_for (int j = 0; j < VERYBIG; j++) {
                        sum += 1;

                        sumx = 0.0;
                        for (k = 0; k < j; k++) {
                                sumx = sumx + (double)k;
                        }

                        sumy = 0.0;
                        for (k = j; k < j; k--) {
                                sumy = sumy + (double)k;
                        }

                        if (sumx > 0.0) total = total + 1.0 / sqrt(sumx);
                        if (sumy > 0.0) total = total + 1.0 / sqrt(sumy);
                }

                elapsedtime = timeGetTime() - starttime;

                printf("Time Elapsed %10d mSecs Total=%1f Check Sum = %1d\n", (int)elapsedtime, total, sum);

        }


        return 0;
}
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 普朗特的涡 的主题更新
信息提示
请填处理意见