Implement pixels as RGBX structure.

- Add ‘make debug’ target
- Add links in README
This commit is contained in:
Fabien Freling 2014-07-12 22:37:15 +02:00
parent 8175b8a06c
commit cce4d45ba6
4 changed files with 73 additions and 53 deletions

22
TODO.md
View file

@ -1,25 +1,31 @@
[-] Quaternions
[X] Draw rotated pixels in src order
[-] Draw rotated pixels in src order -> cache write miss
[X] Use atan2 at beginning and end of line.
Interpolation in-between values
[X] Test pixel perfect 90
[ ] Fix out-of-bounds pixel set
[ ] Optimization for square images?
[X] Fixed point computation?
[-] -funroll-loops
[X] Fixed point computation
[-] -funroll-loops -> no gain
[-] restrict qualifier -> unavailable in C++
# Cache
[-] Rotate per channel -> no gain
[ ] Load pixels in 64-bit variable
[X] Cut image in tiles
[X] Overlap
[-] Rotate in one temp tile then copy/move it
[X] Align tiles in memory
[-] Align memory -> no gain
[ ] RGBX format
## Alignement
[X] RGBX format (create pixel structure) on 8 bytes (can do computation in-place)
[ ] Load pixels in 64-bit variable
[ ] Align memory on 16 bytes
## Layout
[ ] Pack 4 neighbors in 16B structure (aligned)
Each point is followed by the point below
[ ] Spiral layout?
# Quality
[X] Interpolate using SIMD, SSE (no big gain)
[X] Interpolate using SIMD, SSE (no big gain, alignement problem?)
[ ] Image borders