[毕业设计]手记

pre - 2.26:

1、将数据类型由string改成了long

2、发现两处bug:1、一个地方val赋值附错了   2、另一个地方只是单纯对val进行++,没有加上实际值。

 

2.27

9:00——15:00

出现问题Q:

1、3*10反而比以前更慢了

2、graphDistinct反而在增加,edge在不停的增加!!!!

3、reduce Vertex的速度也慢了

4、在mergeVertex中的SubVertex竟然会有2个以上:也就是说,两个vertex属于同一个partation了。

 

解决的问题:

没发现match冲突了

 

太奇怪了,其实基本没改什么地方啊!!!

15:30

发现对于只有10v40e的小图来说,竟然没问题,是不是交错代码了 =  =

18:41

终于知道是怎么错的了!!!!!!!

C#的string是倒着存的啊!!!!!!

b[0] 是最高位啊!!!!

我想多了啊!!!!!!

没打好基础知识啊!!!!!!!!!!!!!!、

字符串的campare错了啊!!!!!!!!

所以部分的,length相等的数字比较就出问题啊!!!

所以问题出的还不是那么明显啊!!!!!!

我去啊!!!!

感情姐姐我这半个月一直都是这样写的啊!!!!

之前那些能对才怪啊!!!!!!!!!

这么久都没发现啊!!!!!!!!!!!

真是没想到啊!!!!!!!

粗心大意了啊!!!!!!!!!!!!

尼玛啊!!!!!!!!!!!!!!!!

终于解放了啊!!!!!!!!!!!!!

调了这么久了啊!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

下次一定要注意细节啊!!!!!!!!!!!!!!!!!


2.28

11:20 

昨天又重跑了一个3*5和一个3*10的。出现的变化:

1. 3*5用了5小时17分钟,目测3*10在17小时内会跑完。(想多了,也许还要2个多小时)

2. 3*5 通过了我的基本测试

但是有这样的一些问题:

1. 3*10为何不是成比例的增加跑的时间?按说3*10应该是3*5的两倍,为何3倍还有余?

也许是因为一个partition变得很大,所以conflict的边也变得很多,所以处理起来时间会不断增加。时间应该是一个先上升后下降的曲线吧?!


2. 测试了下3*5的reduce效果,发现和之前错误的3*5竟然差距不大。为何?

回忆之前错误的过程:

1. 首先测试3*10的结果,发现match出的边集有互相冲突的(但第一个循环没有冲突,这妥妥的有问题)。

2. 静态调错,却发现了出现了  10-10这样的边,按说不应该有这样自相连的边。后来发现,是有一个c#函数中,对一个边的Val赋值赋错了,导致except的时候,没把match到的边排除出去,才影响了结果。但也不会因为有了10-10这样的边,就会导致match的边集有冲突。仔细检查了所有merge的过程,没在发现别的问题。

3. 后来把2最后改过的又拿去跑,没再仔细分析,但其实之前的问题根本没解决。

4. 后来开会了,mentor让改成long型。于是我改成long了。又跑,错误更加明显了,直接发现有的边属于两个不同的集合。

5. 后来在单机上跑了小图,终于发现了47-62的时候,他会留62而不是47。这样根本理论都错了。原来是string的比较写错了。

分析过去的程序(既然连最基本的函数都写错了。。相当于字符串的大小比较是随机的。。为什么会有以下的问题?):

1.  为何依然能reduce,且和正确的差不多?

2. 为何没有出现一个边属于两个不同集合?

3. 为何时间会那么长?


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值