On Mon, Mar 16, 2009 at 7:18 AM, Ingo Weinhold <ingo_weinhold@xxxxxx> wrote: > My point isn't that hard affinity can harm the system -- it can't -- but that > it will be used in cases where it doesn't make sense, thus slowing down the > application using it. My general assumption being that in most cases the OS > will have a better idea about the hardware it is running on than an > application (respectively its developer). Hence the OS should make the > scheduling decisions. I somewhat disagree, but let's not go down that path in the interest of staying within reasonable discussion boundaries :) > I have no doubt that there are situations where hard affinity can be put to > good use, but it's a pretty crude API. I'd rather see an API that allows the > application to give hints about the resource usage profile of its threads and > let the OS do that actual scheduling. I think this is where the question becomes: Do the applications define the purpose of the OS, or does the OS define the purpose of the applications? Maybe that's too abstract... but ultimately, it's my opinion that if a user wishes to run an application for the purpose of accomplishing what that application was designed to accomplish - then the OS shouldn't try to prevent it from doing so. Either way, I think we have come to the conclusion that while hard affinity *might* have a valid purpose, a minority people believe this is so, and thus, it's not likely to be implemented. We can probably leave it at that, no? I mean: this will ultimately boil down to: "Patches welcome" (or at least I would hope they would be if someone was to actually put together a reasonable solution.) >> > Besides, from an environmental >> > point of view, I'm not even sure I still like those projects. >> >> Yeah, I'm beginning to see where you come from. Wasting kWh upon kWh for >> rebuilding Haiku over and over and over again is Good(TM), but >> participating in DC efforts for finding cures to AIDS and cancer is bad. >> Because Haiku is more important than human lives? > > I think you're getting carried away a bit. This was merely a side remark and > I was mostly thinking of cryptographic projects like cracking RC5 keys. That happens to be one of maybe a hundred different projects that I have contributed CPU cycles to... I'll admit that SETI@Home and RC5-72 are probably two of the least useful projects out there, and yet, they're two of the more popular ones. It just happens that RC5-72, and OGR-27 are two of the *only* distributed computing projects that have a Haiku-specific client at this point - thus people who wish to demonstrate the "common" usage of Haiku to the rest of the distributed computing world are currently limited to these projects at this moment. http://stats.distributed.net/misc/platformlist.php?project_id=27&view=tcoy http://stats.distributed.net/misc/platformlist.php?project_id=8&view=tcoy But I digress...this is indeed way off topic. If we do get a sys/shm.h I may have another go at porting the BOINC client - which opens a lot more interesting project potential :) - Urias