38、并行编译器与双四元数乘法算法解析

并行编译器与双四元数乘法算法解析

1. TRACO 并行编译器

TRACO 是一款源到源的编译器,它能够从 C/C++ 语言的循环中提取粗粒度和细粒度的并行性。该编译器基于描述循环中所有依赖关系的传递闭包来实现并行化算法,并生成可编译的并行 OpenMP C/C++ 或 OpenACC C/C++ 代码。

在不同编译器对 NPB 和 Polybench 循环的并行化数量方面,有如下数据:
| 基准测试 | 并行性类型 | TRACO | Pluto | Par4All | Cetus | ICC |
| — | — | — | — | — | — | — |
| NAS | 无同步 | 109 | 35 | 79 | 107 | 45 |
| NAS | 细粒度 | 22 | 7 | 25 | 19 | 9 |
| NAS | 总计 | 131 | 42 | 104 | 126 | 56 |
| Polybench | 无同步 | 30 | 29 | 30 | 29 | 28 |
| Polybench | 细粒度 | 15 | 10 | 10 | 8 | 9 |
| Polybench | 总计 | 45 | 39 | 39 | 38 | 37 |

从表格数据可以看出,TRACO 在 NAS 基准测试的无同步和细粒度并行化方面都有不错的表现,尤其是在无同步并行化中数量较多。这表明 TRACO 在处理不同类型的并行性时具有一定的优势。

2. 双四元数乘法算法

在数据处理和计算机科学领域,超复数的应用越来越广泛,而双四元数乘法是超复数代数中最耗时的运算之一。传

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值