Category Archives: Performance

Graphing Oracle performance metrics with Telegraf, InfluxDB and Grafana

Introduction As a picture is worth a thousand words, we may want to visualise the oracle performance metrics. There is already several tools to do so, but what if you could do it the way you want? build your own graph? … Continue reading

Posted in Performance | 18 Comments

Hyper-threading: measure its impact during SLOB runs thanks to numactl and turbostat

Introduction As you probably know, a single physical CPU core with hyper-threading appears as two logical CPUs to an operating system.  While the operating system sees two CPUs for each core, the actual CPU hardware only has a single set of … Continue reading

Posted in Performance | 6 Comments

Direct Path Read and “enq: KO – fast object checkpoint”

Introduction When using direct path read, oracle reads the blocks from the disk. The buffer cache is not being used. Then, when oracle begins to read a segment using direct path read, it flush its dirty blocks to disk (A dirty block … Continue reading

Posted in Performance | 8 Comments

processor_group_name and SGA distribution across NUMA nodes

Introduction On a NUMA enabled system, a 12c database Instance allocates the SGA evenly across all the NUMA nodes by default (unless you change the “_enable_NUMA_interleave” hidden parameter to FALSE). You can find more details about this behaviour in Yves’s … Continue reading

Posted in Performance | 5 Comments

Modify on the fly the cgroup properties linked to the processor_group_name parameter

Introduction I am preparing a blog post in which I’ll try to describe pros and cons of cpu binding (using the processor_group_name parameter) versus Instance caging. Today’s comparison: As you know you can change the cpu_count and resource_manager_plan parameters while … Continue reading

Posted in Performance | 1 Comment

cpu binding (processor_group_name) vs Instance caging comparison during LIO pressure

Introduction Suppose that I am trying to consolidate multiple databases on to a single server and that I would like to limit the cpu usage of one of the database. Then I decide to test the cpu binding approach and the … Continue reading

Posted in Performance | 1 Comment

Measure the impact of remote versus local NUMA node access thanks to processor_group_name

Introduction Starting with oracle database 12c you can use the processor_group_name parameter to instruct the database instance to run itself within the specified operating system processor group. You can find more detail about this feature into Nikolay Manchev’s blog post. … Continue reading

Posted in Performance | 3 Comments