Sun又有开放源代码动作,这一回是广邀各界协助打造一种称为"Fortress"的全新程序设计语言。Sun日前悄悄把原型Fortress"解译器"(interpreter)发布为开放源代码软件。解译器是一种程序设计工具,用来逐行执行Fortress程序。Sun又有开放源代码动作,这一回是广邀各界协助打造一种称为"Fortress"的全新程序设计语言。Sun日前悄悄把原型Fortress"解译器"(interpreter)发布为开放源代码软件。解译器是一种程序设计工具,用来逐行执行Fortress程序。
Sun实验室计算机科学家兼Fortress项目领导人Eric Allen说:"我们设法邀请学术界人士及其它第三者共襄盛举。"
Sun希望以Fortress取代50年前在IBM诞生的Fortran程序设计语言。Fortran至今仍活用于高效能计算机运算任务,例如气象预报。
尽管Fortress脱胎自美国国防部的超级计算机赞助计划,但也处理主流的运算问题--更轻易地促使多核处理器内的新型处理器引擎提高性能。
Allen说:"随着多核运算对一般桌面系统的重要性提高,程序设计师必须转用 Fortress这类语言,以便利用硬件性能。"
英特尔与AMD目前生产的主流x86芯片具有双重或四个处理核心,Sun的Niagara芯片拥有八个核心,不久后将提高到16个。然而,软件却难以分割成各自独立的片断、在那些核心当中平行运作,或越跨多重处理器运作。
Illuminata分析师Gordon Haff说:"对一些类型的工作负载(workload)来说,PC业做得不错。Google就是平行运算的问题。有些工作负载调节得很好,但许多则不 然。从那些工作负载榨出平行运算,是长久来的计算机科学问题。程序已有,但距离解决问题还十万八千里远。"
Sun希望Fortress有助于解决此问题,让开发人员能以在多核心平台上运作更佳的方式撰写程序。
例如,Fortress程序设计人员必须明确表明什么时候软件不应平行执行,这跟一般的预设作法相反。当Fortress程序执行"for"循环 (loop)--一项重复的任务--Fortress就会自动把这项任务分割成几个片段,并把每一段派送到不同的核心、处理器或服务器去处理。
Fortress也试图以智能方法存储数据,以便数据在需要使用时可就近在处理器附近获取。Sun认为,这对由独立服务器通过高速网络组成的大型计算机丛集(clusters)而言,尤其有用。