はじめに
Cerebras Systems の WSEの中のPEのプログラムってどうなっているのか?ずーと、謎でしたが、先日、Google君に色々と聞いていたら、出てきました。
Cerebras Software Language (CSL) で、Zig という言語をベースにしているようです。
Cerebras SDK
The Cerebras Software Development Kit: A Technical Overviewに、Cerebras Software Development Kit なるものの説明があります。
この中で、下記の部分で、CSL というものがあります。CSLは、Cerebras Software Language の略で、Zigという言語をベースにしているっぽです。
Programming the CS-2 using CSL
CSL is designed for writing high-performance programs for PEs on the WSE. CSL is a medium-level language, in that it exposes both low and high-level programming features. CSL is low-level in that it exposes the capabilities of the instruction set and some of the hardware structures that the ISA controls. On the other hand, CSL is a high-level language in that it supports structured control flow, loops, if-then-else constructs, and hides processor registers, performing automatic register allocation. CSL allows for compile time execution of code blocks that take compile-time constant objects as input, a powerful feature it inherits from Zig, on which CSL is based. CSL will be largely familiar to anyone who is comfortable with C/C++, but there are some new capabilities on top of the C-derived basics.
Zig とは?
Zig は、下記のサイトにありました。
Zig is a general-purpose programming language and toolchain for maintaining robust, optimal and reusable software.
Version は、0.10.0 です。ぱっと見、Rust っぽいです。Sponsors の中に、あの、時雨堂のロゴがあります。
おわりに
CerebrasのSDK R0.6の新機能についてにもちょこっと情報がありました。