Live data from Hacker News

Knuth's Challenge: Analyze everything your computer does in one second

gaxun.net

41–50 of 52 posts

Re: Knuth's Challenge: Analyze everything your computer does in one second

#41

Fascinating question, reminds me of this one that made HN almost two years ago: “What happens when you type Google.com into your browser and press enter?” https://github.com/alex/what-happens-when Would love to see Knuth's Challenge setup in a repo for collaboration. HN Discussion on the above link: https://news.ycombinator.com/item?id=8902105

Sad that it has 57 issues and 27 pull requests, and begins with When you just press "g" the browser receives the event and the entire auto-complete machinery kicks into high gear... ... not exactly a low level explanation. I was expecting non-keyboard input methods, keyboard scan codes, keymaps, input modes, fonts, glyph selection, screen resolution and rendering. Scan codes are mentioned in the next paragraph, but t…

You should add this to the repo!

Re: Knuth's Challenge: Analyze everything your computer does in one second

#43

Fascinating question, reminds me of this one that made HN almost two years ago: “What happens when you type Google.com into your browser and press enter?” https://github.com/alex/what-happens-when Would love to see Knuth's Challenge setup in a repo for collaboration. HN Discussion on the above link: https://news.ycombinator.com/item?id=8902105

Sad that it has 57 issues and 27 pull requests, and begins with When you just press "g" the browser receives the event and the entire auto-complete machinery kicks into high gear... ... not exactly a low level explanation. I was expecting non-keyboard input methods, keyboard scan codes, keymaps, input modes, fonts, glyph selection, screen resolution and rendering. Scan codes are mentioned in the next paragraph, but t…

Know anything else that actually lists all that? I'd love to research each thing on its own independently but it's so hard to come up with the list without already knowing

Re: Knuth's Challenge: Analyze everything your computer does in one second

#44
This line stood out to me:

"It might be shocking if an erroneous program was discovered, but it could certainly happen."

Is anyone actually under the impression that the thousands or tens of thousands of components that interact with each other at any given time on a typical desktop computer would be "correct", even for generous definitions of that word (well, that are less generous than "most of the time generally do what the designers set out to, generally, accomplish")?

It seems to me that all components in computers of at least the last decade, not to mention their interactions, are so complex that they almost certainly are full of small and not so small errors; they are deployed as soon as the most obvious and obnoxious errors have been removed but there must be heaps of things going on that most people would agree on are "errors". I'm continually amazed that we manage to build (or rather, 'assemble') systems that most of the time work at all.

Re: Knuth's Challenge: Analyze everything your computer does in one second

#45

Earlier quoted context omitted.

Sad that it has 57 issues and 27 pull requests, and begins with When you just press "g" the browser receives the event and the entire auto-complete machinery kicks into high gear... ... not exactly a low level explanation. I was expecting non-keyboard input methods, keyboard scan codes, keymaps, input modes, fonts, glyph selection, screen resolution and rendering. Scan codes are mentioned in the next paragraph, but t…

You should add this to the repo!

The only option is to fork, as apparently it's unmaintained. I have enough projects right now.

Re: Knuth's Challenge: Analyze everything your computer does in one second

#46

Earlier quoted context omitted.

Sad that it has 57 issues and 27 pull requests, and begins with When you just press "g" the browser receives the event and the entire auto-complete machinery kicks into high gear... ... not exactly a low level explanation. I was expecting non-keyboard input methods, keyboard scan codes, keymaps, input modes, fonts, glyph selection, screen resolution and rendering. Scan codes are mentioned in the next paragraph, but t…

Know anything else that actually lists all that? I'd love to research each thing on its own independently but it's so hard to come up with the list without already knowing

I'd love to research each thing on its own independently but it's so hard to come up with the list without already knowing

I would recommend examining from different perspectives: network activity or options at each layer (wireshark), browser activity (firebug, debugger, or read the code), OS activity (debugger, or read the code), program activity (debugger, or read the code, or learn various system monitoring tools like filesystem monitors, kernel or library-based tracers, etc), virtualization systems (their hardware and network emulation), network systems (proxies, load balancers and caches of all configurations) security systems of all kinds. You are right that there is probably no holistic resource, because the question is sort of ridiculously specific.

Re: Knuth's Challenge: Analyze everything your computer does in one second

#48
post #22

The code running on the CPU isn't the only thing the computer is doing in that one second, the X86{,_64} opcodes we could capture aren't necessarily exactly what the CPU is doing, and code being run by extra controllers and processors isn't likely to be accessible to anyone but the manufacturer. In 1989, we'd've also been looking at code running on a single core with a single-task or cooperative-multitasking OS (for…

I think this could only be done from an outside perspective for any given unit of time (meaning e.g. somehow monitoring the actual physical state of every atom of a modern system) and could only be performed by other machines . I think we've reached a sort of "chicken and egg" point in computing history where we can only understand any given device with the help of other machines , though not necessarily with AI or M…

>I think this could only be done from an outside perspective

>only be performed by other machines

JTAG allows in-device debugging. Of course you need another machine, by some definition, to view the results or you would indefinitely apply recursion.

Re: Knuth's Challenge: Analyze everything your computer does in one second

#49
post #28

Earlier quoted context omitted.

Unless you go to the local diner for breakfast and don't know the line-cook...

Good point. You walk into the diner implicitly trusting the line cook and the bread baker and so on. Very similar to the chain of trust implicit in the tech we use. Only I believe the chain of trust in the tech to be much longer and proven to have been repeatedly broken in recent decades. Also, line cooks have the luxury of tossing out loafs of bread that have moulded over.

:) They can even cut off the mouldy bits, preserving the rest of the breakfast.

Re: Knuth's Challenge: Analyze everything your computer does in one second

#50
post #15

Earlier quoted context omitted.

> simpler hardware that an individual could completely understand Our hardware now is so much more complex, what has it gained us? The quick answer is performance, but is it true? What about correctness? Hard to prove either way, but my guess is we've gained a little bit on performance and lost on correctness.

My first computer was an 14MHz Amiga 1200 in the early 90s. In some ways the performance difference isn't too noticable, e.g. the GUI was often more responsive than those I use today. In other ways it's clearly different; e.g. waiting minutes for a JPEG to decode, as the scanlines slowly appeared one after another.

This is something I have thought about.

I think that the expectations have changed though - my first computer was a C64, and loading and starting a game was a several minutes long wait. I don't remember that I was bothered that much by that, but when I tried playing an old game even 15 years ago, I couldn't believe how much time it took.

The same for my Amiga, starting it took a really long time, but I don't think I did mind. The Workbench was never slow though. Unfortunately both my A1200 and C64 have died so I can't test my patience anymore. I remember that on the A500, flood fill in Deluxe Paint was a visible process though :-)

I used the A1200 with a MC68030 expansions while going to the university up to about 1995 and it wasn't much slower to work with than the DEC Alphas that we had there - except for things requiring raw CPU power. Most of the time waiting was for I/O, and my crappy small hard drive was probably faster than the NFS mounts anyway. The Alphas had 384 MB if I remember correctly though, which was just crazy.

The Amiga wasn't fast enough to play 16 bit mp3-files in stereo even with the 68030 cpu though.

In 1995 I replaced the Amiga with a PC with Linux on it, and computing was still amazingly fast. Installing slackware was a two week project however, mostly because I had to download everything in the university and use floppies and partly because the floppies were reused and flaky so I had to go back and redownload many disks.

The internet was crazy-slow outside the university until about 1998 when I was lucky enough to live in a block that got fiber for some reason. It was still slow at most workplaces for a another decade.

At around 1998 I got a job and a laptop for work. I installed Linux and Window Maker (or was it Afterstep?) and it was totally fine to work on. It might have had a Pentium with 32 or possibly 64 MB memory. All in all it was really fast, once it had booted, and I mainly used emacs and gcc. I remember that booting Windows on that machine was much slower.

As far as I can remember it was also possible to use a browser without having 1 GB or RAM at that time.

A full compile of our product took 6 hours though. It wasn't always necessary but it had to be done occasionally. A few years later it took 30 minutes to compile.

Today, I get irritated if I have to wait more than 30 seconds before I can test a line of code.

Post reply on HN