jfdube.wordpress.com
Trigonometric Look-Up Tables Revisited | 0xjfdube
https://jfdube.wordpress.com/2011/12/06/trigonometric-look-up-tables-revisited
Trigonometric Look-Up Tables Revisited. Trigonometric Look-Up Tables Revisited. December 6, 2011. In my spare time, I’m working on a 2D game that relies on huge amount of entities being updated and displayed every frame, at 60FPS. This requires to have a permanent eye on overall performances. For profiling, I’m using an in-house profiler quite similar to what’s described here. Today, I realized that I was spending 2.37ms calling trigonometric functions per frame, essentially. According to this document.
jfdube.wordpress.com
Links | 0xjfdube
https://jfdube.wordpress.com/links
Allocators Overhead, Waste and Fragmentation. Leave a Reply Cancel reply. Enter your comment here. Fill in your details below or click an icon to log in:. Address never made public). You are commenting using your WordPress.com account. ( Log Out. You are commenting using your Twitter account. ( Log Out. You are commenting using your Facebook account. ( Log Out. You are commenting using your Google account. ( Log Out. Notify me of new comments via email. Notify me of new posts via email.
jfdube.wordpress.com
Lessons learnt while spinning | 0xjfdube
https://jfdube.wordpress.com/2011/09/24/lessons-learnt-while-spinning
Lessons learnt while spinning. Lessons learnt while spinning. September 24, 2011. In a recent project I worked on, I tried to minimize context switches by strategically replacing a critical section in our memory allocator by a custom spinlock. That looked like this:. Class SpinLock { volatile tInt LockSem; public: FORCEINLINE SpinLock() : LockSem(0) {} FORCEINLINE tBool Lock() { while(1) { / Atomically swap the lock variable with 1 if it's currently equal to 0 if(! We have to be very careful when busy-wa...
jfdube.wordpress.com
Understanding Memory Ordering | 0xjfdube
https://jfdube.wordpress.com/2012/03/08/understanding-memory-ordering
March 8, 2012. In a previous post on atomic operations. I skipped an important topic, which is memory ordering. Let’s take a look at a simple example:. Volatile bool Ready = false; int Value = 0; / Thread A while(! Ready) {} printf(%d, Value); / Thread B Value = 1; Ready = true;. The expected value to be printed is 1, obviously. But what if. End-up written in memory before. Will not be 1, resulting in random behavior. It took a while to figure-out why we had random crashes with very-low reproduction rate...
jfdube.wordpress.com
Implementing a recursive read-write spinlock | 0xjfdube
https://jfdube.wordpress.com/2014/01/03/implementing-a-recursive-read-write-spinlock
Implementing a recursive read-write spinlock. Implementing a recursive read-write spinlock. January 3, 2014. Very often I see programmers using a critical section to make some code thread-safe. What happens is that most of the time, the protected code will only read data, while blocking other reading threads and lead to poor performances. Most of the time, a read-write lock. In a previous post. A read-write spinlock have the following requirements:. Wait until active readers release their locks. Allowing...
jfdube.wordpress.com
Memory Management Part 1: Introduction | 0xjfdube
https://jfdube.wordpress.com/2011/10/03/memory-management-part-1-introduction
Memory Management Part 1: Introduction. Memory Management Part 1: Introduction. October 3, 2011. This is the first of a series of posts on memory management in a game engine. The topics I’d like to cover are numerous and may changes depending on the response I get from previous posts. Among others, I will cover (in no particular order):. In order to be able to track memory allocations effectively and provide services like memory leaks detection and memory usage reports, it is crucial that all. Notice tha...
jfdube.wordpress.com
Optimizing the recursive read-write spinlock | 0xjfdube
https://jfdube.wordpress.com/2014/01/12/optimizing-the-recursive-read-write-spinlock
Optimizing the recursive read-write spinlock. Optimizing the recursive read-write spinlock. January 12, 2014. In my previous post on implementing a recursive read-write spinlock. I briefly talked about trivial optimizations that could be done to improve the time spent in the lock functions. In this post, we’ll measure these optimizations, propose more optimizations to the read-write spinlock and compare all optimizations results. Test that only test the reader locks without any writers involved, and a.
renderdan.blogspot.com
renderdan: Diagram of the day #8
http://renderdan.blogspot.com/2013/04/diagram-of-day-8.html
Maybe the most boring blog ever. but it's *my* most boring blog ever. Thursday, April 11, 2013. Diagram of the day #8. Is it me or are those sperm? From http:/ www.scratchapixel.com/lessons/3d-advanced-lessons/volume-rendering/volume-rendering-for-artists/ ). Subscribe to: Post Comments (Atom). Dear Dr. B: How come we never hear of a force that the Higgs boson carries? Everything Old is New Again! Spoon in the Bowl. Bidirectional Path Tracing in Participating Media. Down and Out in Jedville.
renderdan.blogspot.com
renderdan: Diagram of the Day #4
http://renderdan.blogspot.com/2010/11/diagram-of-day-4.html
Maybe the most boring blog ever. but it's *my* most boring blog ever. Monday, November 08, 2010. Diagram of the Day #4. This one comes from p.3 of :. Http:/ langley.atmos.colostate.edu/courses/at622/lectures/supp lecture 4A.pdf. Subscribe to: Post Comments (Atom). Dear Dr. B: How come we never hear of a force that the Higgs boson carries? Everything Old is New Again! Spoon in the Bowl. Bidirectional Path Tracing in Participating Media. Down and Out in Jedville. Sorry guys - we've gone to twitter.
renderdan.blogspot.com
renderdan: Framework for gcc on a mac
http://renderdan.blogspot.com/2013/06/framework-for-gcc-on-mac.html
Maybe the most boring blog ever. but it's *my* most boring blog ever. Sunday, June 16, 2013. Framework for gcc on a mac. Slightly boring post, but since there's fuck all documentation about how this works, I thought i'd jot down a note to myself about it. During some scons wrangling, I discovered that its necessary to give gcc the path to the Framework directory using -F. This irritatingly trivial deviation from the usual -I and -L include paths, needs to go in both. Remember that - it goes in *both*.
SOCIAL ENGAGEMENT