Talk:Prime triangle: Difference between revisions

m
Swift - performance improvement
(An Observation)
 
m (Swift - performance improvement)
 
(4 intermediate revisions by 3 users not shown)
Line 1:
==An Observation==
It may help some of the entries to note that primes greater than 2 are odd, and 1+1 is not valid, which implies that if you are looking for n+g=prime if a is even g must be odd and vv.--[[User:Nigel Galloway|Nigel Galloway]] ([[User talk:Nigel Galloway|talk]]) 10:44, 20 April 2022 (UTC)
 
: Yes. ... I can get a 30% speedup on the C implementation by changing <tt>for (size_t i = 1; i + 1 != length; ++i) {</tt> to <tt>for (size_t i = 1; i + 1 < length; i+= 2) {</tt>.
 
: But I am leaving that alone for now -- this little laptop I am working on is so slow that the timings I would report would look like a significant slowdown even after that speedup (for me it's 1.64 seconds down to 1.25 seconds, and the code reports how long it takes to run). --[[User:Rdm|Rdm]] ([[User talk:Rdm|talk]]) 15:55, 21 April 2022 (UTC)
 
::Does seem to give a worthwhile performance boost, thanks Nigel - I've adjusted the VB.NET and Algol 68 samples accordingly. --[[User:Tigerofdarkness|Tigerofdarkness]] ([[User talk:Tigerofdarkness|talk]]) 18:27, 21 April 2022 (UTC)
 
::I've made this change to the C entry and a couple of my other ones. In the case of C++ and Swift (which is much slower than the others - about 12s?!) it made very little difference to the runtime so I've left them as is. --[[User:Simonjsaunders|Simonjsaunders]] ([[User talk:Simonjsaunders|talk]]) 21:29, 21 April 2022 (UTC)
:::Also applied to Swift now, and I've made it much faster by not using ArraySlice. --[[User:Simonjsaunders|Simonjsaunders]] ([[User talk:Simonjsaunders|talk]]) 07:49, 22 April 2022 (UTC)
1,777

edits