Hi!

The filesystem issues are mostly due to what we do in TS mode, way too
much pointless operations, even if the real cache helps a little bit
here (take this comment with a bit of salt: as in delta with the cache
between TS and NTS).

What we do in TS mode with filesystem that could explain the difference to Linux? The filesystem problem is just that something like file_exists() (which a lot of apps use very extensively) takes a lot more time, and it's not cached by anything above the OS. And even with the OS cache on Windows such operation is significantly slower.

However, thinking that you can get anything close to what we have on
unix using processes is a sweet dream, which will become a nightmare
once you realized that past the little usual tricks, nothing will help
you to go further (and we are there already). Any windows developers
know that windows is not designed to perform well using processes. No
real surprise either that almost all apps able to compare with their
unix equivalent uses threads (only or in critical parts).

The only way we can be faster in threaded model if we don't do a full context switch (i.e., if we don't fully isolate one thread from another) - otherwise we'd be just emulating OS code doing the same thing but by slower user-level means (that's effectively what we do with ZTS because we have no choice there). I can't even begin to imagine how PHP engine could work without full thread isolation. I'm afraid if I think about it more I'd get nightmares. But if you think it's possible you are very welcome to try.
--
Stanislav Malyshev, Software Architect
SugarCRM: http://www.sugarcrm.com/
(408)454-6900 ext. 227

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to