This document discusses memory access scheduling algorithms to improve DRAM performance. It describes the internal organization of DRAM and constraints on accessing different banks, rows, and columns. Two scheduling algorithms are implemented: Bank First, which schedules requests by bank in round-robin order; and Row First, which prioritizes requests to the same bank and row to reduce latency from row buffer misses. The algorithms are evaluated based on execution time, energy-delay product, and maximum slowdown compared to an unscheduled baseline.