Playback speed
Share post
Share post at current time

Paid episode

The full episode is only available to paid subscribers of Computer, Enhance!

Q&A #58 (2024-06-24)

Answers to questions from the last Q&A thread.

In each Q&A video, I answer questions from the comments on the previous Q&A video, which can be from any part of the course.

Questions addressed in this video:

  • [00:04] Brief mention that the answer to the prefetching question will be its own video.

  • [00:52] “Payload follow-up to the semi-L1 speeds after ~5mins (Kaby Lake, Win10): Am I right in assuming that you wanted me to actually do work with the read, and make the result verifiable? Be aware that slightly changing the data or code around the lib file can be enough for it not to occur, but what can I use that information for?”

  • [05:20] “Why is integer division in general slower than floating-point division? It’s true even when the number of bits dedicated to the significand is greater than the number of bits used to store the integer. E.g. 32-bit unsigned integer division vs double-precision floating-point division (53 bits for significand).”

  • [12:20] “Question about ‘Analyzing Dependency Chains’:

    At the end, isn't there a dependency on the 'cmp' for the next 'inc'? We can't increment too soon, otherwise we are comparing the wrong value. Is there some sort of concurrent dependency?”

  • [19:03] “I think you might have already touched this subject a little but I wanted to ask about something specific. Signatures/declarations of functions. You seem to use them very infrequently. How do you manage to find functions in a larger codebase.”

  • [22:14] “In measuring-data-throughput you say something about if we could change the specification (to avoid loading the json file) we could speed things up further. I was wondering whether you meant just not loading from the file system or whether you meant that some file format other than json could bring those benefits.”

  • [26:12] “Question about ‘How does QueryPerformanceCounter measure time?’ (I know I’m too far back):

    What’s the reason QPC artificially limits frequency to 10MHz when it can clearly do much better?”

  • [30:16] “So, I was wondering about the file access strategy. The buffer size and cache usage seems very good for this kind of case you had. But, if I have a program that goes through thousands of files, amounting to 45-50 gig on every startup, and build up to about 30 gig working memory. The chances of me having any file Chace in memory is quite low.

    I wonder, what would the strategy for optimizing this kind of thing really be?”

The full video is for paid subscribers

Programming Courses
A series of courses on programming topics.