Home My Page Projects Code Snippets Project Openings 3D graphics for Standard ML
Summary Activity SCM

SCM Repository

[sml3d] Log of /trunk/sml3d/src/particles/compiler/optimizer.sml
[sml3d] / trunk / sml3d / src / particles / compiler / optimizer.sml  
ViewVC logotype

Log of /trunk/sml3d/src/particles/compiler/optimizer.sml

Parent Directory Parent Directory


Links to HEAD: (view) (download) (annotate)
Sticky Revision:

Revision 874 - (view) (download) (annotate) - [select for diffs]
Modified Thu May 6 18:08:36 2010 UTC (9 years, 4 months ago) by pavelk
File length: 1264 byte(s)
Diff to previous 873
Added a new property to blocks: reference count. This new property is used in an optimization where we remove unused blocks from the program, and inline blocks that only have one reference count to reduce the amount of branching that we need to do.

Revision 873 - (view) (download) (annotate) - [select for diffs]
Modified Wed May 5 20:18:00 2010 UTC (9 years, 4 months ago) by pavelk
File length: 767 byte(s)
Diff to previous 869
Added a few primitives to handle a bit more lower level vector manipulation in order to expose a few more optimizations that we could perform in preparation for generating code for OpenCL. Most notably, we don't want to be doing things like calculating the dot product of basis vectors.

Also, added a new module for specialized optimizations on primitives which were made possible with the aforementioned newly added vector primitives.



Revision 869 - (view) (download) (annotate) - [select for diffs]
Modified Fri Apr 30 16:42:34 2010 UTC (9 years, 4 months ago) by pavelk
File length: 639 byte(s)
Diff to previous 868
Broke out the different optimizations into their own separate modules. The Optimizer now has more control over the order in which the optimizations are run, and the number of times each optimization is run.

Revision 868 - (view) (download) (annotate) - [select for diffs]
Modified Thu Apr 29 22:39:32 2010 UTC (9 years, 4 months ago) by pavelk
File length: 19824 byte(s)
Diff to previous 866
Fix some formatting and make the optimizer take a whole program instead of a block list as an argument. The next step is to separate each of the optimizations into their own modules.

Revision 866 - (view) (download) (annotate) - [select for diffs]
Modified Thu Apr 29 20:16:27 2010 UTC (9 years, 4 months ago) by pavelk
File length: 19774 byte(s)
Diff to previous 864
IR translation now returns a program datatype, which has the emitter block separated from the physics block, and also keeps track of the rendering operation requested. Also, added property fields for variables and blocks in order to track for UVE.

Revision 864 - (view) (download) (annotate) - [select for diffs]
Modified Wed Apr 28 17:21:18 2010 UTC (9 years, 4 months ago) by pavelk
File length: 19753 byte(s)
Diff to previous 863
Updated work on UVE. It now works the way I intended it to, although I think I may need to revisit my intentions.

Revision 863 - (view) (download) (annotate) - [select for diffs]
Modified Tue Apr 27 23:09:18 2010 UTC (9 years, 4 months ago) by pavelk
File length: 20368 byte(s)
Diff to previous 862
UVE: work in progress...

Revision 862 - (view) (download) (annotate) - [select for diffs]
Modified Tue Apr 27 01:27:39 2010 UTC (9 years, 4 months ago) by pavelk
File length: 18204 byte(s)
Diff to previous 859
Changed optimizations to run until they leave the program unchanged. Fleshed out UVE only to realize that I did it wrong, needs to be rethought. Fleshed out constant folding code, works pretty well.

Revision 859 - (view) (download) (annotate) - [select for diffs]
Modified Sat Apr 24 00:34:50 2010 UTC (9 years, 5 months ago) by pavelk
File length: 11242 byte(s)
Diff to previous 758
Started work on useless variable elimination.

Revision 758 - (view) (download) (annotate) - [select for diffs]
Modified Tue Feb 9 04:46:06 2010 UTC (9 years, 7 months ago) by pavelk
File length: 5181 byte(s)
Diff to previous 748
Optimized translation of SINK to avoid a branch. Changed reference counting in optimizer to go from top down rather than from the bottom up.

Revision 748 - (view) (download) (annotate) - [select for diffs]
Added Tue Feb 2 06:08:36 2010 UTC (9 years, 7 months ago) by pavelk
File length: 6125 byte(s)
Whoops, forgot the optimization module.

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0