Goshido / android-vulkan

This repository is a project for learning Vulkan API, constraint based 3D physics, Lua scripting, spatial sound rendering, HTML+CSS UI rendering.
30 stars 3 forks source link

Mandelbrot color LUT approach. #1

Closed Goshido closed 4 years ago

Goshido commented 4 years ago

Task

It is needed to compare analytic color approach with LUT color approach for Mandelbrot set rendering scene.


Compare criteria


Expected result

Result must be documented in the <repo>/app/src/main/profiling/results.ods file.

Goshido commented 4 years ago

mandelbrot::MandelbrotLUTColor class was implemented. Result images are nearly identical to the images which are produced by mandelbrot::MandelbrotAnalyticColor class. Small differences are detected via GIMP with difference filtering.

Analytic color mapper (mandelbrot::MandelbrotAnalyticColor) mandelbrot-analytic

LUT color mapper (mandelbrot::MandelbrotLUTColor) mandelbrot-lut


Next step is to collect data and make report.

Goshido commented 4 years ago

Result:

Mapper FPS Current End temperature
Analytic 39.5 FPS 646.857 mA 29.7 °C
LUT 40.2 FPS 614.429 mA 29.3 °C

LUT mapper relative analytic mapper benefit FPS Current Temperature
+1.77% -5.01% -1.35%

Conclusion: LUT mapper brings the most significant benefit in power consumption metric in current experiment. FPS and temperature benefits are not significant.


Precise results: See <repo>/app/src/main/profiling/results.ods file.