<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Modartt user forum - Hyperthreading]]></title>
	<link rel="self" href="https://forum.modartt.com/extern.php?action=feed&amp;tid=6687&amp;type=atom"/>
	<updated>2019-08-02T11:28:01Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.modartt.com/viewtopic.php?id=6687</id>
		<entry>
			<title type="html"><![CDATA[Re: Hyperthreading]]></title>
			<link rel="alternate" href="https://forum.modartt.com/viewtopic.php?pid=961624#p961624"/>
			<content type="html"><![CDATA[<p>I don&#039;t think AVERAGE latency is what you should be looking at.<br />Maximum and minimums may be interesting, but predictability, i.e. deviation is far more significant and I think you need a LOT more than 5 measurements to get at that.</p><p>{Not good at stats, but I have a grasp of it}</p>]]></content>
			<author>
				<name><![CDATA[aandrmusic]]></name>
				<uri>https://forum.modartt.com/profile.php?id=1347</uri>
			</author>
			<updated>2019-08-02T11:28:01Z</updated>
			<id>https://forum.modartt.com/viewtopic.php?pid=961624#p961624</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Hyperthreading]]></title>
			<link rel="alternate" href="https://forum.modartt.com/viewtopic.php?pid=961548#p961548"/>
			<content type="html"><![CDATA[<p>Yes, if the software core sound generator do not get redesign for ultra fast processors, only the latency will change.<br />That&#039;s why I said that to work it&#039;s require redesign the software core sound generator to allow more precision for extra calculation.&nbsp; But it&#039;s just a idea, since at the moment the public with such processors are not enought to justify such investment.</p><p>I was one of the first, if not the first, to imagine and suggest to use non-real time calculation (audio export for example) to make pianoteq use a lot more calculation, more precision, to create perfect piano sounds up to the point to shut-up any critic. Studios, for example, could play the piano in real time( while the artist performs) and later render it using algorithms that requires heavier computation to produce perfect piano sounds. Even if took 1 hour to render 5 minutes of performance, it would be worthwhile.</p><p>The problem it&#039;s the high cost to redesign the software core sound generator. Other problem is that people could get used with the perfect sound rendered and start to spot/point more deffects in the real time playing mode. But today pianoteq 6.5 it&#039;s already very good, close to the real thing.</p><div class="quotebox"><cite>MrRoland wrote:</cite><blockquote><p>I would imagine that you would get a latency that is so low that the<br />notes you&#039;re playing will sound even before you pressed the keys <i class="far fa-grin-tongue smiley"></i></p><div class="quotebox"><cite>Beto-Music wrote:</cite><blockquote><p>I was just imagining what if Modartt could design/update a new sond engine for a processor like this :</p><p><a href="https://www.amazon.com/Intel-i9-9980XE-Processor-Unlocked-Processors/dp/B07JGCMQY8/ref=sr_1_7?keywords=i9&amp;qid=1563817985&amp;s=gateway&amp;sr=8-7">https://www.amazon.com/Intel-i9-9980XE-...amp;sr=8-7</a></p><p>18 cores of 4,4ghz each...<br />36 threads...</p><p>They would be able compute much more details for ultra hyper realistic sounds.</p></blockquote></div></blockquote></div>]]></content>
			<author>
				<name><![CDATA[Beto-Music]]></name>
				<uri>https://forum.modartt.com/profile.php?id=8</uri>
			</author>
			<updated>2019-07-23T17:50:55Z</updated>
			<id>https://forum.modartt.com/viewtopic.php?pid=961548#p961548</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Hyperthreading]]></title>
			<link rel="alternate" href="https://forum.modartt.com/viewtopic.php?pid=961531#p961531"/>
			<content type="html"><![CDATA[<p>I would imagine that you would get a latency that is so low that the<br />notes you&#039;re playing will sound even before you pressed the keys <i class="far fa-grin-tongue smiley"></i></p><div class="quotebox"><cite>Beto-Music wrote:</cite><blockquote><p>I was just imagining what if Modartt could design/update a new sond engine for a processor like this :</p><p><a href="https://www.amazon.com/Intel-i9-9980XE-Processor-Unlocked-Processors/dp/B07JGCMQY8/ref=sr_1_7?keywords=i9&amp;qid=1563817985&amp;s=gateway&amp;sr=8-7">https://www.amazon.com/Intel-i9-9980XE-...amp;sr=8-7</a></p><p>18 cores of 4,4ghz each...<br />36 threads...</p><p>They would be able compute much more details for ultra hyper realistic sounds.</p></blockquote></div>]]></content>
			<author>
				<name><![CDATA[MrRoland]]></name>
				<uri>https://forum.modartt.com/profile.php?id=5741</uri>
			</author>
			<updated>2019-07-22T19:56:40Z</updated>
			<id>https://forum.modartt.com/viewtopic.php?pid=961531#p961531</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Hyperthreading]]></title>
			<link rel="alternate" href="https://forum.modartt.com/viewtopic.php?pid=961529#p961529"/>
			<content type="html"><![CDATA[<p>I was just imagining what if Modartt could design/update a new sond engine for a processor like this :</p><p><a href="https://www.amazon.com/Intel-i9-9980XE-Processor-Unlocked-Processors/dp/B07JGCMQY8/ref=sr_1_7?keywords=i9&amp;qid=1563817985&amp;s=gateway&amp;sr=8-7">https://www.amazon.com/Intel-i9-9980XE-...amp;sr=8-7</a></p><p>18 cores of 4,4ghz each...<br />36 threads...</p><p>They would be able compute much more details for ultra hyper realistic sounds.</p>]]></content>
			<author>
				<name><![CDATA[Beto-Music]]></name>
				<uri>https://forum.modartt.com/profile.php?id=8</uri>
			</author>
			<updated>2019-07-22T18:16:40Z</updated>
			<id>https://forum.modartt.com/viewtopic.php?pid=961529#p961529</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Hyperthreading]]></title>
			<link rel="alternate" href="https://forum.modartt.com/viewtopic.php?pid=961513#p961513"/>
			<content type="html"><![CDATA[<p>Both (smt and nosmt) have been done on clean re-boots. Thanks for your hint.</p>]]></content>
			<author>
				<name><![CDATA[groovy]]></name>
				<uri>https://forum.modartt.com/profile.php?id=1021</uri>
			</author>
			<updated>2019-07-21T11:38:19Z</updated>
			<id>https://forum.modartt.com/viewtopic.php?pid=961513#p961513</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Hyperthreading]]></title>
			<link rel="alternate" href="https://forum.modartt.com/viewtopic.php?pid=961512#p961512"/>
			<content type="html"><![CDATA[<p>Not to doubt the results of your experiment, but I think the methodology could use improvement</p><p>According to what else was running and what else had run recently - the first measurement could have been slowed by other tasks/processes and or their residue.<br />The second experiment started on a relatively &quot;clean&quot; machine.</p><p>I would therefore do both experiments several times on clean re-boots.<br />There is still likely to be variation, something you can ponder.</p><br /><p>So with hyperthreading turned ON the two lowest latency measurements were 13 and 14 ? <br />with it OFF they were 13 and 16 ?</p>]]></content>
			<author>
				<name><![CDATA[aandrmusic]]></name>
				<uri>https://forum.modartt.com/profile.php?id=1347</uri>
			</author>
			<updated>2019-07-21T10:11:59Z</updated>
			<id>https://forum.modartt.com/viewtopic.php?pid=961512#p961512</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Hyperthreading]]></title>
			<link rel="alternate" href="https://forum.modartt.com/viewtopic.php?pid=961510#p961510"/>
			<content type="html"><![CDATA[<p>Hey marcos,</p><p>this is not a thread about latency in general, there are already a few that go more in deep.</p><p>It&#039;s just about a single parameter: hyperthreading.</p><p>ceteris paribus</p><p>Cheers</p>]]></content>
			<author>
				<name><![CDATA[groovy]]></name>
				<uri>https://forum.modartt.com/profile.php?id=1021</uri>
			</author>
			<updated>2019-07-21T07:13:12Z</updated>
			<id>https://forum.modartt.com/viewtopic.php?pid=961510#p961510</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Hyperthreading]]></title>
			<link rel="alternate" href="https://forum.modartt.com/viewtopic.php?pid=961508#p961508"/>
			<content type="html"><![CDATA[<p>I am almost convinced that latency has more to do with the audio interface and drivers, the cpu power will let you have more polyphony but not less latency. I did not find significative difference in latency between an AMD Turion M500 Intel Pentium 2020m. I&#039;ve lost my latency measurements, but the Intel was newer and faster, latency was about the same. <br />I don&#039;t know how familiar are you with maths but latency could be predicted quite accurately by the following equation: <br />latency= 3*(pianoteq shown latency) + 4ms <br />or something like this, where pianoteq shown latency is what you read when configuring the buffer size, and frequency (pianoteq shown latency= buffer size/samplerate). I&#039;m sure about the slope 3 but not the intercept, anyway it wasn&#039;t much different between those two processors. Those measurements were made recording on a channel pianoteq sound and on the other the digital piano sound, then measuring the distance between the two sounds, very similar to what you did. Driver was ASIO4all and the sound was generated in the internal sound card. USB sound card had much worse performance.<br />Now I own a much better laptop, if you are courious I can measure and see how it compares (if I find old measurements)</p>]]></content>
			<author>
				<name><![CDATA[marcos daniel]]></name>
				<uri>https://forum.modartt.com/profile.php?id=4155</uri>
			</author>
			<updated>2019-07-21T04:26:08Z</updated>
			<id>https://forum.modartt.com/viewtopic.php?pid=961508#p961508</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Hyperthreading]]></title>
			<link rel="alternate" href="https://forum.modartt.com/viewtopic.php?pid=961489#p961489"/>
			<content type="html"><![CDATA[<div class="quotebox"><cite>marcos daniel wrote:</cite><blockquote><p>Thus, it is better (or was at that time) to have two fast cores than four slow ones.</p></blockquote></div><p>Better in respect of <strong>real-world latency</strong>? That&#039;s the question.</p><p>Minimum latency does not necessarily reflect some Benchmarking indices.</p><p>What has better latency? Two native CPUs or two CPUs emulating four (slower?) virtual CPUs aka &quot;Simultaneous MultiThreading&quot;?</p><p>An OpenBSD maintainer (following my upper link) indicated, that the additional multithreading layer <strong>could</strong> have negative impact on system &quot;performance&quot;.</p><p>So I made my real-world experiment and found no difference in latency using 2 cores or 2 cores with SMT (= 4 &quot;virtual&quot; CPUs). But this is just a sample.</p>]]></content>
			<author>
				<name><![CDATA[groovy]]></name>
				<uri>https://forum.modartt.com/profile.php?id=1021</uri>
			</author>
			<updated>2019-07-20T06:19:51Z</updated>
			<id>https://forum.modartt.com/viewtopic.php?pid=961489#p961489</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Hyperthreading]]></title>
			<link rel="alternate" href="https://forum.modartt.com/viewtopic.php?pid=961468#p961468"/>
			<content type="html"><![CDATA[<p>I don&#039;t believe that hyperthreading on or off, will affect the latency, what can be affected is perfomance, by the way there is a extensive post of a guy who tested several cpus and showed that pianoteq only took significative advantaje from the two first physical cores, hyperthreading and more than two cores had less impact on perfomance. Thus, it is better (or was at that time) to have two fast cores than four slow ones.<br />If I find this post, I will paste the link here...</p><p>Edit: this is the post <a href="https://www.forum-pianoteq.com/viewtopic.php?id=4149">https://www.forum-pianoteq.com/viewtopic.php?id=4149</a></p>]]></content>
			<author>
				<name><![CDATA[marcos daniel]]></name>
				<uri>https://forum.modartt.com/profile.php?id=4155</uri>
			</author>
			<updated>2019-07-18T15:31:17Z</updated>
			<id>https://forum.modartt.com/viewtopic.php?pid=961468#p961468</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Hyperthreading]]></title>
			<link rel="alternate" href="https://forum.modartt.com/viewtopic.php?pid=961465#p961465"/>
			<content type="html"><![CDATA[<p>Can disabling of hyperthreading (&quot;virtual CPUs&quot;) speed up the response of Pianoteq?</p><p>This question came up recently in <a href="https://www.forum-pianoteq.com/viewtopic.php?id=6556">Silent laptop advice.</a></p><p>I tried to get an impression with the following quick test:</p><p>To get a value for an overall-latency I clicked PTQ&#039;s virtual keyboard with a mouse and recorded the click-noise and the PC-speaker sound with the internal microphone of that notebook (velocity fixed at 100).</p><p>Then I switched off hyperthreading temporarily by starting the kernel with the option &quot;nosmt&quot;, which stands for no simultaneous multithreading, and recorded the same PTQ sound again.</p><p>The timespan between the mouseclick and the Pianosound measured with audacity is the latency (example screenshot below).</p><p>With hyperthreading on (smt) I got an average overall-latency of <strong>17.1 ms</strong> (19, 14, 17, 17, 15, 22, 20, 13).</p><p>With hyperthreadinng turned off (nosmt) the average was <strong>18.9 ms</strong> (18, 16, 22, 13, 16, 22, 19, 20, 24).</p><p><strong>No significant difference of latency found in this experiment.</strong></p><p>Some technical details just if interested:</p><p>With smt:<br />---------<br />$ lscpu<br />Architecture:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; x86_64<br />CPU op-mode(s):&nbsp; &nbsp; &nbsp; &nbsp; 32-bit, 64-bit<br />Byte Order:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Little Endian<br />CPU(s):&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 4<br />On-line CPU(s) list:&nbsp; &nbsp;0-3<br />Thread(s) per core:&nbsp; &nbsp; 2<br />Core(s) per socket:&nbsp; &nbsp; 2<br />Socket(s):&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1<br />NUMA node(s):&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 1<br />Vendor ID:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;GenuineIntel<br />CPU family:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 6<br />Model:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;78<br />Model name:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz<br />Stepping:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3<br />CPU MHz:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2799.902<br />CPU max MHz:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2800.0000<br />CPU min MHz:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;400.0000<br />BogoMIPS:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 4800.00<br />Virtualization:&nbsp; &nbsp; &nbsp; &nbsp; VT-x<br />L1d cache:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;32K<br />L1i cache:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;32K<br />L2 cache:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 256K<br />L3 cache:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3072K<br />NUMA node0 CPU(s):&nbsp; &nbsp; &nbsp;0-3</p><p>Without smt (&quot;nosmt&quot;):<br />----------------------<br />$ lscpu<br />Architecture:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; x86_64<br />CPU op-mode(s):&nbsp; &nbsp; &nbsp; &nbsp; 32-bit, 64-bit<br />Byte Order:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Little Endian<br />CPU(s):&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 4<br />On-line CPU(s) list:&nbsp; &nbsp;0,1<br />Off-line CPU(s) list:&nbsp; 2,3<br />Thread(s) per core:&nbsp; &nbsp; 1<br />Core(s) per socket:&nbsp; &nbsp; 2<br />Socket(s):&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1<br />NUMA node(s):&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 1<br />Vendor ID:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;GenuineIntel<br />CPU family:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 6<br />Model:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;78<br />Model name:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz<br />Stepping:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3<br />CPU MHz:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2800.048<br />CPU max MHz:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2800.0000<br />CPU min MHz:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;400.0000<br />BogoMIPS:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 4800.00<br />Virtualization:&nbsp; &nbsp; &nbsp; &nbsp; VT-x<br />L1d cache:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;32K<br />L1i cache:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;32K<br />L2 cache:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 256K<br />L3 cache:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3072K<br />NUMA node0 CPU(s):&nbsp; &nbsp; &nbsp;0,1</p><p>It is an office-notebook equipped with Pianoteq trial v6.5.3 just for this test. Only optimisation was setting the scaling_governor to &quot;performance&quot; on each CPU.<br />Testsound was Steinway D Prelude at 44.1 kHz and 64 samples buffersize for better latency, than the default 512 (!) samples. OS Debian Linux &quot;Stretch&quot;.</p><p>Example latency measured in the wave editor:<br /><a href="https://postimg.cc/jw11GrYm"><span class="postimg"><img src="https://i.postimg.cc/jw11GrYm/smt-vs-nosmt-44-1k-Hz-64samples.png" alt="https://i.postimg.cc/jw11GrYm/smt-vs-nosmt-44-1k-Hz-64samples.png" title="https://i.postimg.cc/jw11GrYm/smt-vs-nosmt-44-1k-Hz-64samples.png"/></span></a></p>]]></content>
			<author>
				<name><![CDATA[groovy]]></name>
				<uri>https://forum.modartt.com/profile.php?id=1021</uri>
			</author>
			<updated>2019-07-18T08:27:09Z</updated>
			<id>https://forum.modartt.com/viewtopic.php?pid=961465#p961465</id>
		</entry>
</feed>
