Live data from Hacker News

24-core CPU and I can’t move my mouse (2017)

randomascii.wordpress.com

121–130 of 255 posts

Re: 24-core CPU and I can’t move my mouse (2017)

#121
post #41

Earlier quoted context omitted.

I do miss aiming a particle accelerator at my brain as a HCI method.

It was just form of 2D acceleration. We even see it now, sometimes called "hardware cursor" in various games settings, althought pipeline is much longer. Just that old small hardware had little to no memory protection and very tight integration so stuff like that could be done directly instead of going thru many layers of abstraction

Not sure if you missed the point or I'm missing yours, but the post you replied to points out that CRT displays sound insane in a certain light...

Re: 24-core CPU and I can’t move my mouse (2017)

#122
post #71

Earlier quoted context omitted.

I feel the same way about TV. I miss the ability to quickly flip through channels. When I was younger and my family had our first internet connection my dad said "One day internet webpages will load like changing channels on the TV - click click click. instant page loads" Today TV soo much slower and webpage are... well... you know.

I played around with the `dillo` web browser a couple years ago. It doesn't support javascript, but it was oh so amazing to experience it as you describe.

I still love using Dillo or w3m to browse a simpler web at times.

Re: 24-core CPU and I can’t move my mouse (2017)

#123
post #79

This is one of the primary resaons I ditched Windows for Macos. The multitasking on Windows is ridiculously bad. Also, applications that freeze and can't be killed/restarted are simply part of life on Windows. Add to all that, Window slows down over time - again, the periodic reformat and rebuild is part of life on Windows. After I switched to Mac I didn't need to rebuild the operating system essentially ever. Also,…

I have been where you are, posting the same thing, but I don't believe it is true today. Applications that hang and can't be killed is a much bigger problem to me in Linux than in Windows 10. I also don't reformat, at most i reset Windows or applications but it has been years. I agree with the rest but in everyday use the registry is not a problem in Windows. The difference to me is that I as a power user might be ab…

> Applications that hang and can't be killed is a much bigger problem to me in Linux than in Windows 10.

Have you seen anything in Linux that you can't kill with "kill -9"?

Re: 24-core CPU and I can’t move my mouse (2017)

#124
post #18
post #15

Earlier quoted context omitted.

> And IIRC, each Intel SMT (hyper-thread) unit has its on instruction pointer and (non-SIMD?) register set. I believe the SMTs share the register rename storage, which I'd say is the register set more than the 'architectural registers' But I'd say the reason they're not real is because they don't increase the maximum instructions per clock. With many loads, they do increase the average instructions per clock, but the…

In reality you never have a finely tuned load that uses all the resources all of the time. Processors spend a lot of time waiting for memory, so hyperthreading allows for better utilization of compute. It’s rare to have a workload that benefits from turning it off, and in those cases it’s usually because the hyperthread is hurting the cache hit rate enough to offset the gains.

I recently checked whether an ugly hack I implemented years ago for 30% performance gains ("halve the default OpenMP thread count at start of computation and restore it afterwards" -> effectively, disable hyperthreading) was still necessary. It's now apparently a 3x performance gain... All because I'm saturating memory bandwidth. I don't know whether to be happy or sad...

Re: 24-core CPU and I can’t move my mouse (2017)

#125
post #32

From reading it over the root cause was in a massively-multiprocess application. In general this is the usual problem of "on windows use threads not processes for ephemeral parallel tasks" right?

There are also just some workloads that will saturate things. If you hit the mmap infrastructure hard enough on Windows you can saturate the kernel and your mouse cursor will stop moving, I managed to do it with a custom key/value store written in C# once I spun up enough threads hitting mapped files at once.

I would assume that on win10/11 (this was a while ago) it is harder to saturate a modern machine, though, especially if you lower the i/o priority of your process.

Re: 24-core CPU and I can’t move my mouse (2017)

#126
post #59

Earlier quoted context omitted.

I did an experiment and effectively proved this to myself many years ago. I had just upgraded to an i7-3770K (8 threads, 4 cores) from a Core 2 Quad (4 threads, 4 cores). I did a POV-Ray render several times using 1, 2, 4, and 8 threads. 2 was nearly double the speed of 1, 4 was nearly double the speed of 2, but 8 was only about 15% faster than 4. To ensure I wasn't bottlenecking RAM at that level, I tried again with…

That's one use case. SMT is not designed to address it. POV-Ray will saturate your execution resources in the core and adding another frontend doesn't change the facts. SMT is designed to hide memory load latency. In this use case it is completely brilliant. You will get 2x speedups with hyperthreading when randomly accessing memory.

> You will get 2x speedups with hyperthreading when randomly accessing memory.

...unlesss you access so much memory (while doing relatively little compute on each piece) that hyperthreading just causes more cache invalidation.

Re: 24-core CPU and I can’t move my mouse (2017)

#127
post #47

Earlier quoted context omitted.

I’m curious as to the upside of C, is it mostly just a familiarity thing? Holding your own code to a high standard is great, but wouldn’t it be nicer if you could offload more of that into the tooling and spend more time on the problem or making the code even cleaner? Also as a side note: I always find it funny that a flag that represents all warnings doesn’t actually turn on all warnings.

For my own projects I use C because I know it, but also because I know and trust the ecosystem. I seem to have developed something of a software-survivalist mentality, so I like to know that I can build my project five years from now without worrying about whether some remotely-hosted dependency isn't there any more. (I'm not claiming that newer, more trendy languages necessarily fail this test - just that I don't kn…

I think the remotely hosted dependency problem and ecosystem thing is not that big of a deal all the time, but if the project involves atypical OS and architectures, then C makes sense. I think it’s still possible to do these in other languages, but that’s just another familiarity gap to add to the existing set.

For the remotely hosted dependency thing, I think it’s pretty easy to vendor dependencies in most realistic C contenders, and a really simple litmus test is just yanking your network cable and doing a fresh build.

The ecosystem thing can be a bigger deal, but again it really depends on the problem domain. There are lots of high quality, non-C libraries for C to always be a clear winner. I think it’s more important to take a step back and make sure whatever language you pick is well suited to the task, rather than assuming any individual one will always be. Knowing multiple languages is handy for this, since that’s more ecosystems that you can pick from, rather than just tying yourself to a single one.

Re: 24-core CPU and I can’t move my mouse (2017)

#128

Earlier quoted context omitted.

I recommend getting a Framework. It's probably not as good as an M1, but it'll last you more than two years, and if it doesn't, you can just change the CPU for a better one without having to throw all the other, perfectly good hardware away.

> I recommend getting a Framework. It's probably not as good as an M1, but it'll last you more than two years… Macs have famously-long usable lives — my sister uses a 7-year-old iMac, for example. The latest macOS Ventura supports Macs made in 2017. I'd be very surprised to hear about people using 2021 Framework laptops as their daily driver in 2026.

But you're in a thread about how the GP's Mac didn't last two years. I'm fairly sure I will be using my Framework laptop as my daily driver in 2026, maybe with one motherboard replacement. I just switched from my 2017 XPS, and I do development work. I gave it to my dad, who loves it and will probably hold on to it for another few years.

It's a bit odd to be saying this about pre-M1 Macs, as they were "just" Intel machines, same as everything else.

Re: 24-core CPU and I can’t move my mouse (2017)

#129
post #67

I use Thunderbird for my email. Its behavior shows it is a multithreaded program. But often, the mouse and keyboard will freeze and it becomes unresponsive for several seconds. This is indicative of suboptimal partitioning of the tasks into threads. The highest priority thread should be responding to user input. Heck, back in the 1970s, I designed and built a single board computer that was to be a glass tty. There wa…

even by mid-80s, if you used the naive serial routines built into the Apple IIe you couldn't do 1200bps- 300bps worked. Professional terminal programs used interrupt and buffers to capture incoming bytes while the screen scrolled ( https://sites.google.com/site/drjohnbmatthews/apple2/ssc?pli... ). At least that's what the author of ProTERM told me when I was a kid and I asked how it worked. It sounded pretty exotic a…

Yup, ISRs are the solution for 6800 and 6502 chips.

Data I/O's LogicPak (powered by a 6502) used polling, and would now and then lose data because of that. I advised the engineer working on it to just write an ISR. Months went by, while he was convinced he could make the polling work.

Finally, the manager dropped by and asked if I could just fix it. In a couple hours had it fixed with an ISR. No more problems.

Re: 24-core CPU and I can’t move my mouse (2017)

#130
I fell off the chair when I read the headline. I get that software runs insanely fast on modern hardware and that often, the naive solution works with acceptable performance. But boy -- can we not set the bar as low as "barely responsive"? If your thing doesn't run on a Raspberry PI, it's probably garbage.
Post reply on HN