Weird plotting log, QS, force_qs, quicksort

My logs are looking weird. Usually they look like what is from Bucket 121-127. But as you can see, when it hits table 4, it starts adding different data. What is this about?

Bucket 121 uniform sort. Ram: 3.244GiB, u_sort min: 2.250GiB, qs min: 0.563GiB.
	Bucket 122 uniform sort. Ram: 3.244GiB, u_sort min: 1.125GiB, qs min: 0.562GiB.
	Bucket 123 uniform sort. Ram: 3.244GiB, u_sort min: 2.250GiB, qs min: 0.563GiB.
	Bucket 124 uniform sort. Ram: 3.244GiB, u_sort min: 1.125GiB, qs min: 0.562GiB.
	Bucket 125 uniform sort. Ram: 3.244GiB, u_sort min: 2.250GiB, qs min: 0.563GiB.
	Bucket 126 uniform sort. Ram: 3.244GiB, u_sort min: 1.125GiB, qs min: 0.562GiB.
	Bucket 127 uniform sort. Ram: 3.244GiB, u_sort min: 2.250GiB, qs min: 0.563GiB.
	Total matches: 4294934456
Forward propagation table time: 1514.501 seconds. CPU (208.620%) Thu May 13 10:12:45 2021
Computing table 4
	Bucket 0 uniform sort. Ram: 3.244GiB, u_sort min: 1.625GiB, qs min: 0.812GiB.
	Bucket 1 uniform sort. Ram: 3.244GiB, u_sort min: 1.625GiB, qs min: 0.812GiB.
	Bucket 2 uniform sort. Ram: 3.244GiB, u_sort min: 1.625GiB, qs min: 0.812GiB.
	Bucket 3 QS. Ram: 3.244GiB, u_sort min: 3.250GiB, qs min: 0.813GiB. force_qs: 0
	Bucket 4 QS. Ram: 3.244GiB, u_sort min: 3.250GiB, qs min: 0.813GiB. force_qs: 0
	Bucket 5 uniform sort. Ram: 3.244GiB, u_sort min: 1.625GiB, qs min: 0.812GiB.
	Bucket 6 QS. Ram: 3.244GiB, u_sort min: 3.250GiB, qs min: 0.813GiB. force_qs: 0
	Bucket 7 QS. Ram: 3.244GiB, u_sort min: 3.250GiB, qs min: 0.813GiB. force_qs: 0
	Bucket 8 uniform sort. Ram: 3.244GiB, u_sort min: 1.625GiB, qs min: 0.812GiB.
	Bucket 9 uniform sort. Ram: 3.244GiB, u_sort min: 1.625GiB, qs min: 0.812GiB.
	Bucket 10 QS. Ram: 3.244GiB, u_sort min: 3.250GiB, qs min: 0.813GiB. force_qs: 0
	Bucket 11 uniform sort. Ram: 3.244GiB, u_sort min: 1.625GiB, qs min: 0.812GiB.
	Bucket 12 QS. Ram: 3.244GiB, u_sort min: 3.250GiB, qs min: 0.813GiB. force_qs: 0

I believe this occurs when a quicksort is performed instead of the default sorting algorithm. I think it falls back to using quicksort if there isn’t enough RAM available for the default (i.e. preferred) sort. The important info here is:

Ram: 3.244GiB, u_sort min: 3.250GiB

So looks like you’re about .006 GiB short of having enough RAM for that particular sorting operation.

1 Like

FYI I’ve formatted your logs. Do have a look out for the </> button in the toolbar to help make things readable. :+1:

1 Like

Is this bad? I usually put it at 4 gigs each, but left it default this time. Will it hurt anything?

1 Like

That’s interesting, by default you mean “left the memory param blank” yeah?

I think it depends on your setup. @Blueoxx wrote up some interesting stuff here:

My takeaway is that (like most plotting settings) everyone has different systems and the best way to find your optimal plotting settings is by benchmarking different configurations.

Leaving it default would make it use 3389 RAM. This is optimized for 2 threads. Each thread needs RAM, so if you assigned more than 2 threads on that plotter, it will reduce the RAM available for the buckets and you’ll end up QS’ing some of them. A bit slower but it won’t damage anything.

1 Like