《表2 lu和trisolv的多线程加速比测试结果》

《表2 lu和trisolv的多线程加速比测试结果》   提示:宽带有限、当前游客访问压缩模式
本系列图表出处文件名:随高清版一同展现
《向量化友好的循环分块因子选择算法》


  1. 获取 高清版本忘记账户?点击这里登录
  1. 下载图表忘记账户?点击这里登录

观察图5可以发现,随着线程数的增多,分块后程序的加速比近似表现为线性增长,这说明采用VEC-TSS算法的程序具有良好的并行可扩展性。究其原因有两方面:第一,VEC-TSS算法考虑到了多核共享L3 cache的情况,将L3 cache的容量均分给多个核,故分块后程序在多线程并行处理时,线程间不会竞争使用L3 cache;第二,VEC-TSS算法通过并行粒度分析限定最外层循环的分块因子,使得每个核分配到的循环块个数大于2,保证了多核之间的负载均衡。此外,测试程序lu和trisolv的并行可扩展性却不理想,如表2所示。这是因为程序本身具有较好的局部性,在多线程并行执行时,反而容易造成伪共享,增加了数据一致性开销。