Sitemap - 2023 - Computer, Enhance!

Code Alignment

Q&A #38 (2023-12-11)

Branch Prediction

Q&A #37 (2023-12-04)

A Few Quick Notes

CPU Front End Basics

Q&A #36 (2023-11-27)

Linking Directly to ASM for Experimentation

Q&A #35 (2023-11-20)

Analyzing Dependency Chains

Q&A #34 (2023-11-13)

Intuiting Latency and Throughput

Q&A #33 (2023-11-06)

Inspecting Loop Assembly

Q&A #32 (2023-10-30)

Memory-Mapped Files

Q&A #31 (2023-10-23)

Faster Reads with Large Page Allocations

Q&A #30 (2023-10-09)

Powerful Page Mapping Techniques

Q&A #29 (2023-10-02)

Analyzing Page Fault Anomalies

Q&A #28 (2023-09-25)

Four-Level Paging

Q&A #27 (2023-09-18)

Game Development Post-Unity

Probing OS Page Fault Behavior

Q&A #26 (2023-09-11)

Page Faults

Q&A #25 (2023-09-04)

Monitoring OS Performance Counters

Q&A #24 (2023-08-28)

Repetition Testing

Q&A #23 (2023-08-21)

Measuring Data Throughput

Q&A #22 (2023-08-15)

Efficient DDA Circle Outlines

Microsoft Intern Interview Question #3: Flood Fill Detection

Microsoft Intern Interview Question #2: String Copy

Microsoft Intern Interview Question #1: Rectangle Copy

The Four Programming Questions from My 1994 Microsoft Internship Interview

Monday Q&A #21 (2023-07-31)

Comparing the Overhead of RDTSC and QueryPerformanceCounter

A Tale of Two Radio Shacks

New Q&A Process

A First Look at Profiling Overhead

Monday Q&A #20 (2023-07-17)

Profiling Recursive Blocks

Monday Q&A #19 (2023-07-10)

Profiling Nested Blocks

Monday Q&A #18 (2023-07-03)

Instrumentation-Based Profiling

Monday Q&A #17 (2023-06-26)

How does QueryPerformanceCounter measure time?

Monday Q&A #16 (2023-06-19)

Introduction to RDTSC

Monday Q&A #15 (2023-06-12)

Initial Haversine Processor Code Review

Monday Q&A #14 (2023-06-05)

Writing a Simple Haversine Distance Processor

Monday Q&A #13 (2023-05-29)

Generating Haversine Input JSON

Monday Q&A #12 (2023-05-22)

The First Magic Door

Part One Q&A and Homework Showcase

8086 Simulation Code Review

Monday Q&A #11 (2023-05-15)

How to Play Trinity

8086 Internals Poll

From 8086 to x64

Monday Q&A #10 (2023-05-08)

Estimating Cycles

Performance Excuses Debunked

Monday Q&A #9 (2023-04-24)

The Stack

Other Common Instructions

Monday Q&A #8 (2023-04-17)

Simulating Real Programs

Simulating Memory

Monday Q&A #7 (2023-04-10)

Response to a Reporter Regarding "Clean Code, Horrible Performance"

Simulating Conditional Jumps

Simulating ADD, SUB, and CMP

New Schedule Experiment

Homework Poll!

Simulating Non-memory MOVs

Using the Reference Decoder as a Shared Library

Monday Q&A #6 (2023-03-20)

8086 Decoder Code Review

Monday Q&A #5 (2023-03-13)

Opcode Patterns in 8086 Arithmetic

Monday Q&A #4 (2023-03-06)

Decoding Multiple Instructions and Suffixes

Instruction Decoding on the 8086

"Clean" Code, Horrible Performance

The Haversine Distance Problem

Monday Q&A #3 (2023-02-20)

Python Revisited

Multithreading

Monday Q&A #2 (2023-02-12)

Caching

Single Instruction, Multiple Data

Monday Q&A (2023-02-05)

Instructions Per Clock

Waste

Welcome to the Performance-Aware Programming Series!

Performance-Aware Programming Series Begins February 1st

Table of Contents