I remember every other book on Windows programming saying "Process creation/destruction is expensive, use thread pools (or at least process pools) instead, that's the way to go on Windows". Perhaps this mindset is ingrained for Windows QA team too - they don't have [enough] test cases for such scenarios.
24-core CPU and I can’t move my mouse
311–320 of 509 posts
Re: 24-core CPU and I can’t move my mouse
#312Earlier quoted context omitted.
I was probably a bit imprecise; I do sometimes get full lock ups where I have to reboot, mostly when running TensorFlow locally, but usually I just get lock ups that last It's at the level of "annoying, but doesn't impact my work", so I just live with it.
Ah I see. Which scheduler are using? $ cat /sys/block/sda/queue/scheduler noop deadline cfq [bfq] I've been very pleased with the responsiveness of BFQ when multitasking. And actually, I shouldn't say I never get lock-ups. There's been a couple times where the DE just freezes, and I'll have to hit Ctrl+Alt+F2 to switch to another tty and restart the display manager. But I attribute that to running bleeding-edge versi…
I guess my work does something weird with our desktop linux installs, laptop says this though:
$ cat /sys/block/sda/queue/scheduler noop [deadline] cfq
Re: 24-core CPU and I can’t move my mouse
#313Earlier quoted context omitted.
Straightforward integration with existing tooling was not a "mistake", it was a design point. There were plenty of competing runtimes even in the 80's that were better than C's linker model. C++ succeeded because it didn't create that friction.
> "but on those days probably it was one of the reasons why C++'s adoption took off." I know "Design and Evolution of C++" quite well, and have been a C++ user since Turbo C++ 1.0 for MS-DOS.
Re: 24-core CPU and I can’t move my mouse
#314Earlier quoted context omitted.
Not to take away from your point, but in my experience the vast majority of C++ build pipelines even at major companies can still be improved. Few people enjoy 'improving the build', it often touches everything, and requires discipline to keep it working. Most of the projects I've worked on have been larger than Chrome, I've seen the compile time for BioShock Infinite go from 2 hours down to 15 minutes with serious w…
I worked on exactly this problem for Chrome! I agree with all your major points -- in particular, optimizing incremental builds is the most important thing for developer sanity. Here's a post about what I did: http://neugierig.org/software/chromium/notes/2011/02/ninja.h...
Re: 24-core CPU and I can’t move my mouse
#315Re: 24-core CPU and I can’t move my mouse
#316Earlier quoted context omitted.
Just as a data point - Chrome has more code than the linux kernel - Would you say BioShock Infinite seriously has a larger code base than Chrome? I think a lot of people don't estimate correctly just how huge Chrome is.
I would expect kernels to be quite small (#file, line-count) compared to major Applications like Unreal Games and Civilization 5. I've never worked on Chrome, but I can safely say the amount of source code in a few Unreal Games and Civilization5 dwarfs the drivers and OS code I've worked on. Take Unreal then add a team of developers adding onto it for multiple years thru multiple releases. Then add all the middleware…
Re: 24-core CPU and I can’t move my mouse
#317Earlier quoted context omitted.
IIRC, on the Amigas the CPU was barely involved in the process of reading the mouse events and moving the cursor sprite on the screen.
Yep, hardware sprites.
Re: 24-core CPU and I can’t move my mouse
#318Full disclosure: I work for Google on Chrome. A Chrome build is truly a computational load to be reckoned with. Without the distributed build, a from-scratch build of Chrome will take at least 30 minutes on a Macbook Pro--maybe an hour(!). TBH I don't remember toughing out a full build without resorting to goma. Even on a hefty workstation, a full build is a go-for-lunch kind of interruption. It will absolutely own a…
> How did we get here? Well, C++ and its stupid O(n^2) compilation complexity [...] Wasn't large compilation time a driving force behind coming up with Go? Is a garbage-collected language not suitable for a web browser? I am just curious because I absolutely love writing Go
Re: 24-core CPU and I can’t move my mouse
#319Why the OS don't prioritize UI threads on one or two cores?
Re: 24-core CPU and I can’t move my mouse
#320Full disclosure: I work for Google on Chrome. A Chrome build is truly a computational load to be reckoned with. Without the distributed build, a from-scratch build of Chrome will take at least 30 minutes on a Macbook Pro--maybe an hour(!). TBH I don't remember toughing out a full build without resorting to goma. Even on a hefty workstation, a full build is a go-for-lunch kind of interruption. It will absolutely own a…
C was ok. Not good, but ok. Then we tried to attach the OO paradigm to it and we got the monstrosity that is C++ (and as a consequence of that - Java - which has fixed some issues but still suffers) And don't get me started on templates I'm so glad that paradigm is starting to die out and hopefully Rust, Go and others will take over (their object model still doesn't get around my head but it will eventually)