竺桓州

竺桓州的博客

他的个人主页  他的博客

好崩溃阿....这代码写得...

竺桓州  2009年08月25日 星期二 11:45 | 1750次浏览 | 10条评论

折腾了2个小时...从一对破烂代码中找出了要放在Cell处理器的SPE上运行的部分, 抽出来作了个函数,差点没崩溃死...一下是函数原型, 为了统一编码风格,我第一次使用70年代的函数定义法,疯掉了....至于更能让我崩溃的DMA操作还是等我睡起来再写吧... 

void sweepcore(it,jt, kt, nm, isct, mm,mmo,mmi, mk, myid,
hi, hj, hk, di, dj, dk, Phi, Phii,
Src, Flux, Sigt,
w,mu,eta,tsi, wmu,weta,wtsi, pn,
north, south, east, west,
Phiib,Phijb,Phikb,mdiag, Leakage,
do_dsa,Face,it_dsa,jt_dsa,kt_dsa, do_fixup,nfixed,
ibc,jbc,kbc,
Phiibc,jt_ibc,kt_ibc,mm_ibc,
Phijbc,it_jbc,kt_jbc,mm_jbc,
Phikbc,it_kbc,jt_kbc,mm_kbc,
k0,k1,k2,k3,
ew_rcv,ns_rcv,ew_snd,ns_snd,ew_tag,ns_tag,iq,
i0,i1,i2,i3,
j0,j1,j2,j3)
int it,jt, kt, nm, isct, mm,mmo,mmi, mk, myid,iq;
double hi[it+1], hj[jt+1], hk[kt+1]; /* it;jt;kt */
double di[it+1], dj[jt+1], dk[kt+1]; /* it;jt;kt */
double Phi[it+1]; /* it */
double Phii[it+2]; /* 0:it+1 */
double   Src[nm+1][kt+1][jt+1][it+1]; /* it,jt,kt,nm */
double  Flux[nm+1][kt+1][jt+1][it+1]; /* it,jt,kt,nm */
double  Sigt[kt+1][jt+1][it+1]; /* it,jt,kt */
double w[mm+1], mu[mm+1], eta[mm+1], tsi[mm+1]; /* mm */
double wmu[mm+1], weta[mm+1], wtsi[mm+1]; /* mm */
double pn[8+1][nm+1][mm+1]; /* mm,nm,8 */
int north, south, east, west;
double Phiib[mmi+1][mk+1][jt+1]; /* jt,mk,mmi */
double Phijb[mmi+1][mk+1][it+1]; /* it,mk,mmi */
double Phikb[mmi+1][jt+1][it+1]; /* it,jt,mmi */
int mdiag[mmi+1]; /* mmi */
double Leakage[7]; /* 6 */
bool do_dsa;
int it_dsa,jt_dsa,kt_dsa;
double Face[3+1][kt_dsa+1][jt_dsa+1][it_dsa+1]; /* it_dsa,jt_dsa,kt_dsa,3 */
bool do_fixup;
int *nfixed;
int ibc,jbc,kbc;
int jt_ibc,kt_ibc,mm_ibc;
int it_jbc,kt_jbc,mm_jbc;
int it_kbc,jt_kbc,mm_kbc;
double Phiibc[2][2][mm_ibc+1][kt_ibc+1][jt_ibc+1]; /* jt_ibc,kt_ibc,mm_ibc,0:1,0:1 */
double Phijbc[2][mm_jbc+1][kt_jbc+1][it_jbc+1]; /* it_jbc,kt_jbc,mm_jbc,0:1 */
double Phikbc[mm_kbc+1][jt_kbc+1][it_kbc+1]; /* it_kbc,jt_kbc,mm_kbc */
int ew_rcv,ns_rcv,ew_tag,ns_tag,ew_snd,ns_snd;
int i0,i1,i2,i3,j0,j1,j2,j3,k0,k1,k2,k3;

评论

我的评论:

发表评论

请 登录 后发表评论。还没有在Zeuux哲思注册吗?现在 注册 !
tide

回复 tide  2009年09月07日 星期一 15:14

这个函数定义的太猛了。

0条回复

黄一文

回复 黄一文  2009年08月26日 星期三 08:39

机器也写不出这么牛B的代码

0条回复

刘磊(V.L.)

回复 刘磊(V.L.)  2009年08月25日 星期二 14:47

又见汇编!

0条回复

電波系山寨文化科学家

回复 電波系山寨文化科学家  2009年08月25日 星期二 14:25

编译完了都一样,就好比关了灯都是杨贵妃。

2条回复

张斌

回复 张斌  2009年08月25日 星期二 13:54

这命名,看不懂~

1条回复

  • 竺桓州

    回复 竺桓州  2009年08月25日 星期二 14:07

    这倒霉代码我看了小3个月了也没弄明白这些变量都是干什么的...

    0条回复

welfear

回复 welfear  2009年08月25日 星期二 12:29

很强大!

1条回复

  • 竺桓州

    回复 竺桓州  2009年08月25日 星期二 12:32

    我现在的代码是雷死一个算一个.哇哈哈哈, 虽然我自己都差点被雷死....哪位有空帮忙数数这个函数到底传了多少个参数进去....

    0条回复

暂时没有评论

Zeuux © 2024

京ICP备05028076号