CHEN Yihui il y a 5 ans
Parent
commit
1762ca8276
1 fichiers modifiés avec 75 ajouts et 3 suppressions
  1. 75 3
      report.md

+ 75 - 3
report.md

@@ -62,7 +62,14 @@ for (int i = 0; i < steps; ++i) {
 
 ##### 性能结果
 
-
+| 问题规模 | 任务数        | 总运行时间(sec) |
+| -------- | ------------- | --------------- |
+| 4        | 4             | 0.021           |
+| 8        | 8             | 0.025           |
+| 16       | 16            | 0.020           |
+| 32       | 32            | 0.168           |
+| 64       | 64(跨机器)  | 0.397           |
+| 128      | 128(跨机器) | 0.447           |
 
 #### 二叉树求和
 
@@ -125,8 +132,14 @@ End
 *完整代码见附件*
 
 ##### 性能结果
-
-
+| 问题规模 | 任务数        | 总运行时间(sec) |
+| -------- | ------------- | --------------- |
+| 4        | 4             | 0.022           |
+| 8        | 8             | 0.013           |
+| 16       | 16            | 0.048           |
+| 32       | 32            | 0.156           |
+| 64       | 64(跨机器)  | 0.394           |
+| 128      | 128(跨机器) | 0.466           |
 
 ### FOX矩阵乘法
 
@@ -261,6 +274,20 @@ void MatMultAdd(const MatWrap& a, const MatWrap& b, MatWrap& c) {
 
 ##### 性能结果
 
+| 问题规模 | 并行数 | 总运行时间(sec) |
+| -------- | ------ | --------------- |
+| 128      | 1      | 0.123           |
+| 256      | 4      | 0.288           |
+| 512      | 16     | 0.784           |
+| 1024     | 64     | 4.856           |
+
+| 问题规模 | 并行数 | 总运行时间(sec) |
+| -------- | ------ | --------------- |
+| 512      | 1      | 2.551           |
+| 512      | 4      | 1.099           |
+| 512      | 16     | 0.784           |
+| 512      | 64     | 1.248           |
+
 ### 参数服务器系统
 
 ##### 并行算法描述
@@ -336,6 +363,24 @@ end do
 
 ##### 性能结果
 
+| 交换次数 | 服务器数 | 工作进程数 | 总运行时间(sec) |
+| -------- | -------- | ---------- | --------------- |
+| 1024     | 1        | 8          | 0.036           |
+| 1024     | 2        | 16         | 0.087           |
+| 1024     | 4        | 24         | 0.268           |
+| 1024     | 4        | 32         | 0.292           |
+
+| 交换次数 | 服务器数 | 工作进程数 | 总运行时间(sec) |
+| -------- | -------- | ---------- | --------------- |
+| 1024     | 1        | 64         | 0.441           |
+| 1024     | 2        | 64         | 1.496           |
+| 1024     | 4        | 64         | 0.714           |
+| 1024     | 8        | 64         | 0.684           |
+
+从结果上看,当工作进程数增加时,服务器成比例增加也难以保证总运行时间,因为每次运行需要所有服务器间通信一次。
+
+而当工作进程数固定下,增加服务器数并不能使服务时间线性下降,服务器为1时是一个特例,因为服务器间不再需要通信。因而在服务器负载均衡时,尽量减少服务器间的通信,有时不均衡的微服务设计会好于非常均匀的负载均衡。
+
 ## 个人实验
 
 ##### 问题描述
@@ -499,7 +544,19 @@ void sigmoid(float *x, float *y, int n) {
 
 ##### 性能结果
 
+| 问题规模 | OpenMP线程数 | 总运行时间(sec) |
+| -------- | ------------ | --------------- |
+| 64       | 1            | 0.492           |
+| 128      | 2            | 1.725           |
+| 256      | 4            | 6.681           |
+| 512      | 8            | 46.498          |
 
+| 问题规模 | OpenMP线程数 | 总运行时间(sec) |
+| -------- | ------------ | --------------- |
+| 256      | 1            | 19.848          |
+| 256      | 2            | 11.068          |
+| 256      | 4            | 7.162           |
+| 256      | 8            | 6.252           |
 
 ## 分组实验
 
@@ -523,6 +580,8 @@ void sigmoid(float *x, float *y, int n) {
 
 ##### 性能结果
 
+1
+
 | 问题规模 | 任务数 | 总运行时间 | 分发数据时间 | 并行计算时间 |
 | -------- | ------ | ---------- | ------------ | ------------ |
 | 512      | 1      | 0.387903   | 0.112848     | 0.275056     |
@@ -531,11 +590,24 @@ void sigmoid(float *x, float *y, int n) {
 | 4096     | 8      | 19.073884  | 4.172863     | 14.901021    |
 | 8192     | 16     | 100.614923 | 16.937205    | 83.677718    |
 
+2
+| 问题规模 | 任务数 | 总运行时间 | 分发数据时间 | 并行计算时间 |
+| -------- | ------ | ---------- | ------------ | ------------ |
+| 2048     | 1      | 5.461998   | 1.217323     | 4.244675     |
+| 2048     | 2      | 4.983760   | 1.240886     | 3.742874     |
+| 2048     | 4      | 4.045694   | 1.148780     | 2.896914     |
+| 2048     | 8      | 4.017666   | 1.161650     | 2.856016     |
+| 2048     | 16     | 4.135822   | 1.286142     | 2.849679     |
 
 
 ##### 改进
 
+* 使用Python,numpy生成输入数据
+
+* 重定向输出,使用管道重定向输出
+* 自动化性能测试脚本
 
+*完整代码见附件*
 
 ### fft