aboutsummaryrefslogtreecommitdiff
path: root/BuddhaTest/src
Commit message (Collapse)AuthorAgeFilesLines
* Initial benchmark support.Andreas Grois2018-03-212-6/+22
| | | | Finally no more manual stopwatch usage...
* Fix build error regarding debug log clockv0.0.3½-speedAndreas Grois2018-03-181-1/+1
|
* Undo splitting of buffers in three. Makes buffer access much fasterAndreas Grois2018-03-182-27/+13
| | | | | Not kidding here. For the default parameters this increased the maximum pixel brightness in the image by a factor of 2.25. This has the drawback that the maximum possible image size got reduced, but hey, there's a command line switch to ignore all size limits ;-)
* Move totaliterations calculation to CPU. This frees 4 VGPRs.Andreas Grois2018-03-181-1/+4
| | | | | Now the code is back to the limit of 32 VGPRs without the need to directly operate on the state buffer. This means that now it's bound by memory access.
* Undo change to directly work on buffer. Causes about 30% slowdown...Andreas Grois2018-03-181-2/+3
|
* Add option to skip short orbits. Add option to print debug output.Andreas Grois2018-03-182-2/+20
|
* Adjust default workgroup sizes to better match recommended values.Andreas Grois2018-03-171-5/+5
| | | | AMD recommends a local workgroup size of 256.
* Properly calculate required buffer size. I'm starting to think that std140 ↵Andreas Grois2018-03-171-3/+8
| | | | would have been the better alternative...
* Fix memory allocation for state buffer. How could that ever work?Andreas Grois2018-03-171-1/+9
|
* Seems vec2 needs 16 bytes on nVidia...Andreas Grois2018-03-171-1/+1
|
* Correct line endings.Andreas Grois2018-03-172-646/+646
|
* Clean code a bitAndreas Grois2018-03-171-57/+57
|
* Change PID controller to use frame numbers as time, and time only as ↵Andreas Grois2018-03-171-2/+2
| | | | controlled parameter
* Fix a few warnings spit out by MSVC compiler:Andreas Grois2018-03-171-3/+4
|
* Improve parallelization by not storing the offset, but instead ↵Andreas Grois2018-03-171-1/+1
| | | | | | re-calculating it every dispatch. By this I could get the VGPR usage down from 40 to 36.
* Comment out debug outputAndreas Grois2018-03-161-1/+1
|
* Tweak PID a bitAndreas Grois2018-03-161-2/+2
|
* Fix endless loop in shader and make framerate adaptiveAndreas Grois2018-03-152-4/+21
| | | | | | It seems forcing points outside the cardioid and bulb with a bad random generator can take really long... Also, now framerate adjusts based on time it takes to render frames.
* Prevent even more waiting by storing a more complete stateAndreas Grois2018-03-151-1/+1
|
* Speed up computation tremendously, by having each worker (nearly)Andreas Grois2018-03-151-27/+2
| | | | | completely store its state and working (nearly) fully independent of each other.
* First commit with compute pausabilityAndreas Grois2018-03-142-12/+35
|
* Split buffer in three, one per color (as OpenGL guarantees that one can at ↵Andreas Grois2018-03-112-18/+33
| | | | | | | | least have 8 SSBOs), to allow three times larger images. Also make it possible to ignore maximum buffer size reported by the driver. The maximum buffer size limitation is rather strict on radeonsi, so I decided to split the buffer in three, effectively increasing the maximum image size by a factor of three. While doing so I realized that at least on radeonsi the reported maximum buffer size seems to be off. For this reason I added a new command line switch, that allows to ignore the maximum buffer size check. For those curious: radeonsi reports a maximum buffer size of 128 MB, but I had no problems when using three buffers of 1098 MB each.
* Use long for command line validity checks.v0.0.2-kindaWorkingBetterAndreas Grois2018-03-111-4/+2
|
* Another warning fixedv0.0.1-kindaworkingAndreas Grois2018-03-111-1/+1
|
* Fix lots of warnings output by visual studio...Andreas Grois2018-03-111-11/+12
|
* Replace std::cout with std::cerr for actual error messages. Remove someAndreas Grois2018-03-112-13/+13
| | | | debugging output
* Disable vsync. Not needed, and causing the rendering to be slower thanAndreas Grois2018-03-111-0/+3
| | | | necessary.
* Clarify help output regarding image sizeAndreas Grois2018-03-111-2/+2
|
* Make preview window scale if being resized.Andreas Grois2018-03-111-0/+8
|
* Decouple y and x value based on iteration. Should approximately squareAndreas Grois2018-03-111-0/+11
| | | | teh available randomness!
* Fix wrong max pixel output. Forgot to update this when I reduced the buffer ↵Andreas Grois2018-03-101-1/+1
| | | | size by a factor of two.
* Prepare install script, and make shader loading work from PREFIX/share/...Andreas Grois2018-03-102-14/+51
|
* Add command line parsingAndreas Grois2018-03-102-71/+179
|
* Remove non-needed host buffer copy to ssbo, instead initialize ssbo withAndreas Grois2018-03-101-2/+2
| | | | zero.
* Move buffer dimensions out of buffer into uniforms. No longer odd -2Andreas Grois2018-03-101-10/+17
| | | | everywhere.
* Add color scaling option (as 8 bit per channel is not really much)Andreas Grois2018-03-102-4/+5
|
* Gamma correction for outputAndreas Grois2018-03-102-8/+58
|
* Reduce buffer size by a factor of 2 (image is symmetric)Andreas Grois2018-03-102-10/+9
|
* Fix mirroring in png outputAndreas Grois2018-03-102-3/+11
| | | | | Restrict starting value range to positive y-values, probably improving random quality
* Make local work group size tweakable. (Not yet exposed to user)Andreas Grois2018-03-102-7/+19
|
* Use vectors as storage for png data as a simple means to prevent leaksAndreas Grois2018-03-101-15/+7
| | | | in case of error.
* Make sure png file gets closed by wrapping the file descriptor into aAndreas Grois2018-03-101-7/+28
| | | | class with destructor
* Forgot symmetry on png export. Added now.Andreas Grois2018-03-101-0/+8
|
* Dump result to image.png in current folder.Andreas Grois2018-03-102-2/+75
|
* ColorizeAndreas Grois2018-03-091-3/+5
|
* Make this thing render.Andreas Grois2018-03-091-4/+7
| | | | Also: Steal integer hash from stackexchange...
* Initial CommitAndreas Grois2018-03-093-0/+1687