Googles appar
Huvudmeny

Post a Comment On: cbloom rants

"04-15-09 - Oodle Page Cache"

5 Comments -

1 – 5 of 5
Blogger won3d said...

I wonder if you could end up with a priority inversion problem due to an interaction between your job scheduler and page priorities. If, for example, you have a low priority job occupying pages with high priority, which ends up stalling a high priority job that is waiting for low priority pages.

April 15, 2009 at 11:21 AM

Blogger cbloom said...

Yes, completely, I worry a lot about getting into problems like that, as I'm basically writing more and more of my own OS.

I basically have my own thread scheduler, my own mutexing stuff, and now my own virtual memory manager.

There's a lot of complicated and subtle stuff that goes into those things to avoid priority inversion and thundering herds, and so on.

Part of the risk of exposing more low level control to the game is that it makes it more possible for the game to fuck things up in that way.

Windows for example has lots of very clever stuff to prevent broken code from hurting the system too bad. I know people like Jeff and Casey complain about how the Windows Scheduler is too heavy handed about not doing exactly what you tell it to do, but personally I think it does a pretty amazing job of mostly doing what you ask for but also preventing fuckups.

(for example it does things like priority boost low-priority threads that are time-starved if the high-priority threads are not making progress because they are spinning waiting for the low priority thread to do something that it never gets time to do)

April 15, 2009 at 11:25 AM

Blogger gpakosz said...

pardon my ignorance, but what's Oodle?

April 16, 2009 at 3:12 AM

Blogger cbloom said...

Oodle's my new middleware product for RAD.

If you're a game developer with requests or comments on what you'd like to see in Oodle, please email me.

April 16, 2009 at 9:14 AM

Blogger gpakosz said...

no i'm not a game developer, just a follower who landed here from molly rocket forums :)

April 26, 2009 at 8:55 AM

You can use some HTML tags, such as <b>, <i>, <a>

This blog does not allow anonymous comments.

Comment moderation has been enabled. All comments must be approved by the blog author.

You will be asked to sign in after submitting your comment.