antlr 3.0

antlr が 3.0 になっていつの間にかすごそーな感じになっている。 http://antlr.org/ ANTLRWorks というパーサビルダができているし、 C コード!を出力できるようになっているようです。 AST も勝手に作ってくれるみたい。 ここ最近、bison でちくちくと RenderMan SL の AST を書いているのですが、 http://lucille.atso-net.jp/svn/proj/lucille/branches/RB-0.2/src/sl/ なんか antlr 使えばそんなことする必要がなくなりそう。 シェーダコンパイラは、bison/flex でなくて antlr に変えることを考えることにします。 ちなみに、antlr(parser) + ruby(backend, optimizer) という組み合わせで RenderMan SL を RPU(ray processing unit) アセンブラに変換するコンパイラを作ったひとがいます。 http://taw.chaosforge.org/rpu/ コンパイラ屋にとっては当たり前のことかもしれませんが、ソースも公開されていて、 私のようなコンパイラ初学者には勉強になります。 ここの antlr grammer を利用して、あとは AST から LLVM コードを吐く walker を書けば RSL -> LLVM トランスレータが完成できそう。Continue reading “antlr 3.0”

Ray Tracing Dynamic Scenes using Selective Restructuring

Ray Tracing Dynamic Scenes using Selective Restructuring Sung-Eui Yoon, Sean Curtis, Dinesh Manocha, EGSR 2007. http://gamma.cs.unc.edu/SR/ [En] Quite interesting dynamic realtime raytracing method is presented by GAMMA group. They proposed selective reconstruction of pair of BVH nodes for dynamic raytracing. Spatial structure they are using is BVH, and updating BVH requires only up to ~1%Continue reading “Ray Tracing Dynamic Scenes using Selective Restructuring”

A Real-time Beam Tracer with Application to Exact Soft Shadows

A Real-time Beam Tracer with Application to Exact Soft Shadows Ryan Overbeck, Ravi Ramamoorthi, and William R. Mark, Eurographics Symposium on Rendering, 2007. http://www.cs.columbia.edu/cg/publications.php [En] This paper presents CPU realtime beam tracing method based on clipping(yeah, it is idential to Sutherland clipper used in traditional polygon rasterizer). The method is much faster than previous beamContinue reading “A Real-time Beam Tracer with Application to Exact Soft Shadows”

LLVM 2.0 & gcc 4.2

[En] (Feb 14, 2008 Updated: Here is an updated version LLVM 2.2 v.s. gcc 4.2) LLVM 2.0 and gcc 4.2 are now just released. http://llvm.org/ http://gcc.gnu.org/ I did a benchmark comparison with them. I chose himeno bench for the bench mark program since it is portable, small and simple to compile and run. http://w3cic.riken.go.jp/HPC/HimenoBMT/index_e.html TheContinue reading “LLVM 2.0 & gcc 4.2”

Sampling with Polyominoes

Victor Ostromoukhov, Sampling with Polyominoes, Proceedings of ACM SIGGRAPH 2007, ACM Transactions on Graphics, 26(3), 2007. http://www.iro.umontreal.ca/~ostrom/SamplingWithPolyominoes/ [En] It is fast and has good spectral distribution againt Recursive Wang Tiles. Cool! I think this is one of the best (2D) sampler in the world! [Ja] Penrose tile sampler で有名な Ostromoukhov 先生がやってくれました。 RWT(Recursive Wang Tiles) と同じくらい高速、deterministic(非Continue reading “Sampling with Polyominoes”