上周末中国计算机学会(CCF)举办了《多核技术讲习班》,举办地点在北京,中科院计算所。邀请了明尼苏达大学的丁晨副教授、华为美国研究所的胡子昂博士、美国宾州州立大学的谢源副教授和中科院计算所的范东睿副研究员分别做讲座。
四位的报告题目:
- 丁晨:并行编程与编译技术
- 谢源:新型半导体器件与工艺
- 胡子昂:通信与多核计算
- 范东睿:Godson-T与众核体系结构 Continue reading »
上周末中国计算机学会(CCF)举办了《多核技术讲习班》,举办地点在北京,中科院计算所。邀请了明尼苏达大学的丁晨副教授、华为美国研究所的胡子昂博士、美国宾州州立大学的谢源副教授和中科院计算所的范东睿副研究员分别做讲座。
四位的报告题目:
《关于并行貌似正确的废话》系列文章:
封装这一永恒的主题,在多核的时代还会永恒下去吗?答案是肯定的!
既然四个核的存储一致性都很难通过高效的机制保证,众核时代,更是如此。这众核肯定是若干个小的,结构简单的,功能不同的核的集合体。未来的程序,单单的串行,这么多核,很难充分的利用。功耗已经很高了,多少个核,就至少是多少倍的功耗提升,仅仅依靠投机也是不行的。
《关于并行貌似正确的废话》系列文章:
怎么办?解铃还需系铃人。既然自动的做不了,程序员就需要有并行的头脑,用并行的语言和开发方式,设计,实现。怎么并行?
或许计算机和程序语言的发展史能给我们一些启发。
《关于并行貌似正确的废话》系列文章:
在没有革命性的芯片制造技术之前,咱们必须得接受要想快,只能并行!即使出来了新的CPU制造技术,只要有计算,就需要时间,只要有时间需求,人就想要程序跑的越快越好。这是必须的,除了程序员,没有人会享受程序运行的过程。用计算机的人只想要结果!所以性能,将是永恒的主题。
怎么提升性能?咱们从下往上看。
独立博客该有点什么,该写点什么,在编译点滴建站接近半年的后,忽然间有点迷茫。编译点滴该放点什么东西,博客该记录点什么,什么是该记录的,什么不该记录。虽然概括之就是自己觉得好的都能往上放。
看看现在博客里的文档,太散太杂。虽然刚刚建博的时候,很是花了一些心思写文章,找主题。但到博客的界面主题倒是换了不少,但内容实在是有点对不起观众。高达70%的跳出率说明了一切:)
幸好无意中看到了一个博客,观摩了半天后,对《编译点滴》的未来有了些想法。顺便推荐这个博客《我爱自然语言处理》。作者很用心的写了很多和自然语言处理相关的文章。博客文章很系统,自成体系。
Continue reading »
2010年美国高校计算机系排行榜出炉–《U.S. News》公布了新一期美国大学计算机系实力排名。前四:卡内基-梅隆大学(CMU)、麻省理工学院(MIT)、斯坦福大学(Stanford U)和加州大学伯克利分校(UC Berkely).
Standard Performance Evaluation Corporation:标准性能测试协会,一个致力于发布管理计算机性能标准化测试的组织.建立于1988年,会员包括Apple,Dell,IBM,Intel,Microsoft和Sun。Spec的测试例子被光感应用于计算机系统的性能测试中。
SPEC的测试例子是为了测试实际生活中的场景,如SPEC web2005通过并发HTTP请求测试web服务器的性能.SPEC CPU通过多个例子的运行时间长短衡量CPU的性能。SPEC的测试例子都采用平台无关代码编写,以便能使用各种编译器和平台来测试。现在的工业界更是针对SPEC中的测试例子做优化来证明编译器,CPU,web服务器等等的性能提升。
SPEC发布了以下性能测试集:
注,这份表格并非本人整理,来自wwxu的邮件。
| 会议 | 会议全称 | 领域 | William & Mary 列表 -2008 | 新加坡国立 列表 -1999 | 复旦列表-2008 | 篇均引用次数 | 大陆发表情况 | 3年投稿意愿 | Abstract Deadline | Full Paper Deadline | Notification of decision |
| 1. ASPLOS | Architectural Support for Programming Languages and Operating Systems | 体系结构 操作系统 编译技术 | A+ | Rank1 | Rank1 | 39.1 | 1982年来尚未发表 | 是 | 2009-8-3 | 2009-8-10 | 2009-11-6 |
| 2. CGO | International Symposium on Code Generation and Optimization | 编译技术 | A | N/A | Rank2 | 4.4 | 2009 ICT 2篇;国内公司 3篇 | 是 | 2009-9-3 | 2009-9-10 | 2009-11-11 |
| 3. DAC | Design Automation Conference | 电路设计 体系机构 测试技术 | A | Rank1 | Rank1 | 8 | 1964年来发表9篇 | 是 | 2009-11-9 | ||
| 4. DATE | Design, Automation and Test in Europe | 电路设计 体系机构 测试技术 | A | Rank2 | Rank2 | 2.48 | 1993年,约20篇 | 是 | 2010-1-15 | ||
| 5. DSN | The 39th Annual IEEE/IFIP International Conference on Dependable Systems and Networks | 可靠设计 体系机构 软件系统 | A+ | N/A | Rank2 | 9.51 | 1970年5-6篇 | 是 | 2009-10-8 | ||
| 6. FSE | International Symposium on Foundations of Software Engineering | 软件工程 | A | Rank1 | Rank1 | 10 | 08港科技06港科技2港城市1篇 | 是 | 2009-11-9 | 2010-1-6 | |
| 7. HPCA | International Symposium on High-Performance Computer Architecture | 体系结构 | A+ | Rank1 | Rank1 | 15.7 | 1995年来发表1篇 | 是 | 2009-7-24 | 2009-7-31 | 2009-10-10 |
| 8. ICCAD | International Conference on Computer-Aided Design | 电路设计 测试技术 | A | Rank1 | N/A | 9 | 1990年来发表6篇 | 是 | 2009-5-11 | ||
| 9. ICDCS | IEEE Intl Conf on Distributed Comp Systems | 分布式系统 | A | Rank2 | Rank2 | 8.8 | 1981年来发表6篇 | 是 | 2009-11-25 | 2010-2-8 | |
| 10. ICS | The International Conference on Supercomputing | 高性能计算 | A | Rank1 | Rank2 | 9 | 1987年来4篇 | 是 | 2010-1-11 | 2010-1-18 | 2010-3-22 |
| 11. ISCA | International Symposium on Computer Architecture | 体系结构 | A+ | Rank1 | Rank1 | 25.7 | 1973年来发表5篇 | 是 | 2009-7-10 | 2010-1-15 | 2010-2-15 |
| 12. ISLPED | International Symposium on Low Power Electrical Design | 低功耗体系结构 | N/A | N/A | N/A | 2010-3-5 | 2010-4-30 | ||||
| 13. ITC | International Test Conference | 测试技术 | A | N/A | N/A | 2.86 | 1970年,9篇 | 是 | 2010-3-17 | 2010-6-22 | |
| 14. MICRO | International Symposium on Microarchitecture | 体系结构 | A+ | Rank1 | Rank1 | 15.3 | 1968年来发表9篇,1995年后尚未发表 | 是 | 2009-5-15 | 2009-5-22 | 2009-7-28 |
| 15. NSDI | Symposium on Networked Systems, Design and Implementation | A | N/A | Rank1 | 13.5 | 2004年来尚未发表 | 是 | 2009-9-25 | 2009-10-2 | 2009-12-18 | |
| 16. OOPSLA | Conference on Object Oriented Programming Systems Languages and Applications | 编译技术 | A+ | Rank1 | Rank1 | 11.6 | 2007 香港; 2006 香港 | 是 | 2009-3-19 | 2009-3-23 | |
| 17. OSDI | Usenix Symposium on Operating Systems Design and Implementation | 操作系统 | A+ | Rank1 | Rank1 | 66.3 | 1994年来尚未发表(2008第二作者) | 是 | 2010-3-7 | 2010-7-20 | |
| 18. PACT | IEEE Intl Conf on Parallel Architectures and Compilation Techniques | 并行计算 | A | Rank1 | Rank2 | 7.1 | 1997年来2篇 | 是 | 2010-3-20 | 2010-3-27 | |
| 19. PLDI | Conference on Programming Language Design and Implementation | 编译技术 | A+ | Rank1 | Rank1 | 38 | 08,07 清华2篇,05 ,04 Intel China 2篇,92 台湾 | 是 | 2009-11-13 | 2009-11-20 | 2010-2-2 |
| 20. PODC | ACM Symp on Principles of Distributed Computing | 分布式系统 | A+ | Rank1 | Rank1 | 11.9 | 1982年以来尚未发表 | 是 | 2010-2-10 | 2010-2-17 | 2010-4-15 |
| 21. POPL | Annual Symposium on Principles of Programming Languages | 编译技术 | A+ | Rank1 | Rank1 | 35.7 | 无 | 未定 | 2009-7-8 | 2009-7-15 | 2009-10-1 |
| 22. PPOPP | ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming | 高性能计算 | A | Rank1 | Rank1 | 18.7 | 1988年来3篇 | 是 | 2009-7-17 | 2009-7-20 | 2009-9-18 |
| 23. RTSS | The Real Time Systems Symposium | 实时系统 | A+ | Rank1 | Rank1 | 11.75 | 1979,5-6篇,香港比较多 | 是 | 2009-5-26 | ||
| 24. SAS | IEEE Static Analysis Symposium | 编译技术 | A | Rank2 | N/A | 8 | 07北大 | 是 | 2010-3-12 | 2010-3-19 | 2010-5-4 |
| 25. SC | The International Conference for High Performance Computing, Networking, Storage and Analysis | 高性能计算 | N/A | N/A | Rank2 | 8.6 | 1988年来1篇 | 是 | 2009-4-3 | 2009-4-6 | 2009-6-29 |
| 26. SIGMETRICS | Joint International Conference on Measurement and Modeling of Computer Systems | 性能度量 | A+ | Rank1 | Rank1 | 13 | 1973年来发表2篇 | 是 | 2009-11-2 | 2009-11-9 | 2010-2-9 |
| 27. SOSP | ACM SIGOPS Symp on OS Principles | 操作系统 | A+ | Rank1 | Rank1 | 55.6 | 1967年来尚未发表 | 是 | 2009-3-2 | 2009-3-7 | 2009-6-15 |
| 28. SPAA | ACM Symposium on Parallel Algorithms and Architectures | 并行计算 | A | Rank1 | Rank3 | 9.5 | 1989年来1篇 | 是 | 2010-1-13 | 2010-3-12 | |
| 29. VTS | VLSI Test Symposium | 测试技术 | A | N/A | N/A | 2.89 | 1983年,6篇 | 是 | 2009-9-20 | 2009-9-30 | 2009-12-4 |
| 30. WWW | International World Wide Web Conference | 网络 | A+ | Rank 1 | Rank 1 | 10.2 | 是 | 2009-10-26 | 2009-11-2 | 2010-1-21 |
这两天在折腾小例子,用来表现对语言做某种扩展后将可更高效的编程。我那蹩脚的coding技术捉襟见肘。一个小例子要言简意赅,写在半页ppt里,要有对比,有突出,又要很直观。尝试了很多次。写小例子很能考察编程能力,指针,静态,数组,寄存器变量,各个类型长度等等。要达到瞄一眼就能印象深刻,被震撼的感觉,难!
眼见为实,看下面的小例子,简单的写个循环:
[code lang="cpp"]
ip (short int* fb, short int* bb,short int* res)
{
int i=0;
for (; i< 8; i++)
res[i] = fb[i] + bb[i]+1;
}[/code]
在龙芯上用simd(单指令多数据,一条指令可以存多个数据)来实现的话,需要这么写,别忘了包含loongson.h头文件,这段代码在gcc4.3之后才支持: Continue reading »
今天听了一个博士师兄的论文答辩,试图提高分布式存储并行和共享存储并行中,循环中并行粒度。
分布式存储下的并行,可以简单的理解为片间的并行,集群,很多CPU的计算机中的并行都属于这一类,这类并行强调的是消息传递,因为每个计算单元都有自己的存储空间,且这些存储是相互独立的,靠消息传递的方式来维护存储一致性,这类程序通常使用MPI工具做并行程序开发。这种并行一般是进程之间的并行,每个进程都有独立的资源管理和消息收发,地址空间相互独立。
共享存储下的并行则不同,采用线程间的并行策略,即并行任务之间采用共享存储空间的形式,存储和资源都是共享的。这类并行多存在于现在流行的多核和众核系统中。主要面临的问题是一致性,缓存一致性是最主要的,因为多核系统通常是每个单核有一级cache,而多个核之间又共享二级或者三级cache,据说CPU上30%多的功耗都用在了维持一致性上。片上面积也一半多用来做了cache。OPENMP就是为共享存储而生的编程工具。 Continue reading »
| 2009-2011© 编译点滴 | Suffusion theme by Sayontan Sinha |
近期评论