今日目标:完成单机版debug测试性能;分布式chatgpt学习[旺柴];twitter晚上下载下
上午
- 1
- 分布式BFS chatgpt学习
- bfs检查得colorcc算法没有问题,也验证了一件事:50x中,50个leaf出发的bfs没有顶点交集
- 2
- 检查checkanswer有没有问题
- 不对,发现colorcc有问题
- 3
- 发现colorcc的问题可能是不是从bd出发
- 同时发现0.5的数据集中所有leaf在一个cc上,于是试一试单线程的(多线程也是单线程)
- 都在一个cc中(即有顶点交集)咋用多线程呢
- 其实所有Worker的static数据改成thread local就可以了~
- 都在一个cc中(即有顶点交集)咋用多线程呢
- 同时发现0.5的数据集中所有leaf在一个cc上,于是试一试单线程的(多线程也是单线程)
- 写local的
- 发现colorcc的问题可能是不是从bd出发
- 4
- code and debug local
下午
希望下午和晚上完成local copy开发,并且测试好性能
优化local copy到两个7500数据集都达标
完成twitter query
- 1
- download twitter
- 解决了local copy bug,在7500上平均run
- 原来是粗心导致的nmd
- 2
- 看下下来的twitter是啥格式,开发load
- local share完全不scale up,operf下优化
- 定位问题是初始化每个线程per-vertex数组时间比较长,占了一半多
- 3
- 怎么解决这个问题?对于所有leaf都在一个cc中的情况:
- 其实我们可以用copy on write,每个线程中的副本,是只有其他线程写了的话才创建一个顶点的
- 设计下
- 这要加锁耶
- 休息
- 怎么解决这个问题?对于所有leaf都在一个cc中的情况:
- 4
- code copy on write
- 5
- code copy on write
晚上
先通过编译(考虑在graph中成员,constructor中先读文件)
- 1
- code copy on write
- debug done
- see on 7500_0.5
- twitter download unzip
- 2
- 艹哈哈哈哈哈哈哈哈哈居然达标啦哈哈哈哈哈哈哈哈哈哈哈哈哈
- 精益求精一点,operf一下[旺柴]
- operf优化之后,对两个7500的数据集最快的run 40次求平均,然后单机版算告一段落啦,设计general的多机版
- 艹哈哈哈哈哈哈哈哈哈居然达标啦哈哈哈哈哈哈哈哈哈哈哈哈哈
- 3
- operf改锁之后更慢了x
- 所以之前那样就得了x
- operf改锁之后更慢了x