Author Topic: Improving PI speed  (Read 233 times)

Offline joelshort

  • PixInsight Addict
  • ***
  • Posts: 222
    • View Profile
    • Buckeyestargazer.net
Improving PI speed
« on: 2019 March 08 18:54:02 »
Several years ago I built a computer with PI processing in mind.  It uses a Ryzen 5 1600 processor (6 cores, 12 threads) and 32GB RAM.

A few days ago I got a nice mobile laptop that uses an Intel i7-8565U.  I like the laptop so much I started to think about the possibility of selling the desktop and using the laptop exclusively, since for everything but PI the laptop is just as fast. 

Of course, PI processing is more demanding and I knew the laptop certainly wouldn't keep up.  But just as an experiment I did a speed test of PI on both machines, running StarAlignment on the same set of 150 images.  As expected, the laptop came in about twice as slow as the desktop (11.5min vs 5.5min).  For processing intensive tasks the lower number of cores and threads really showed.  But many processes won't take any longer than the desktop, and like I said the laptop more than keeps up for other normal tasks. 

So, can I live with the slower PI speed of the laptop?  Maybe.

I'm wondering if there's anything I can do to regain some speed on the laptop?  Would a dual boot into Linux be worth it?  Anything else I can do to increase the speed?
Joel Short
www.buckeyestargazer.net
CFF135 f6.7, SV80ST, G3-16200M, QHY163M, QHY183M

Offline joelshort

  • PixInsight Addict
  • ***
  • Posts: 222
    • View Profile
    • Buckeyestargazer.net
Re: Improving PI speed
« Reply #1 on: 2019 March 10 17:00:40 »
So, I thought that installing a Linux partition and running PI from that would give me at least a little bit of performance boost vs. running PI from Windows on the same PC.  I've read this many times that PI is faster on a Linux machine.

I installed Mint and set everything up and ran the same test in Linux and Windows on the same PC.  The PI benchmark did indeed show a performance boost on the Linux partition vs Windows.  However, I was surprised to see that the Windows partition completed a StarAlignment test faster than the Linux partition did.  I registered 100 images on each OS - Windows: 8:35, Linux: 9:52.

It doesn't make sense to me that the benchmark would be better on Linux but real work performance would be better on Windows.
Joel Short
www.buckeyestargazer.net
CFF135 f6.7, SV80ST, G3-16200M, QHY163M, QHY183M

Offline pfile

  • PTeam Member
  • PixInsight Jedi Grand Master
  • ********
  • Posts: 4049
    • View Profile
Re: Improving PI speed
« Reply #2 on: 2019 March 10 17:31:37 »
well the benchmark itself i think predates all the multithreading work that juan put into staralignment, so maybe the benchmark does not accurately reflect the mix of IO and computation that a pure staralignment run represents.

in this post, juan notes that for multithreaded i/o workloads windows seems to beat osx and linux, so i guess that is consistent with your findings:

https://pixinsight.com/forum/index.php?topic=13354.msg80899#msg80899

rob

Offline RickS

  • PTeam Member
  • PixInsight Jedi
  • *****
  • Posts: 1292
    • View Profile
Re: Improving PI speed
« Reply #3 on: 2019 March 10 20:24:17 »
I noticed something similar, Joel.  Linux was generally quite a lot faster than Windows but (with at least one set of data) StarAlignment with distortion correction was much slower.  I meant to dig a bit further and see if I could figure out what was going on but never got to it.

Offline joelshort

  • PixInsight Addict
  • ***
  • Posts: 222
    • View Profile
    • Buckeyestargazer.net
Re: Improving PI speed
« Reply #4 on: 2019 March 11 05:50:35 »
well the benchmark itself i think predates all the multithreading work that juan put into staralignment, so maybe the benchmark does not accurately reflect the mix of IO and computation that a pure staralignment run represents.

in this post, juan notes that for multithreaded i/o workloads windows seems to beat osx and linux, so i guess that is consistent with your findings:

https://pixinsight.com/forum/index.php?topic=13354.msg80899#msg80899

rob

Well that certainly answers my question.

I noticed something similar, Joel.  Linux was generally quite a lot faster than Windows but (with at least one set of data) StarAlignment with distortion correction was much slower.  I meant to dig a bit further and see if I could figure out what was going on but never got to it.

Are you saying that this was isolated to StarAlignment and that other scripts ran faster on Linux than on Windows?  I think I'll run another speed test with CosmeticCorrection and see how each performs.
Joel Short
www.buckeyestargazer.net
CFF135 f6.7, SV80ST, G3-16200M, QHY163M, QHY183M

Offline joelshort

  • PixInsight Addict
  • ***
  • Posts: 222
    • View Profile
    • Buckeyestargazer.net
Re: Improving PI speed
« Reply #5 on: 2019 March 11 07:31:47 »
I just did a CosmeticCorrection test on both Linux and Windows and this time Linux was a little faster (7:08 vs 8:32). 

But, I've decided to keep my desktop for PI processing after all.  The desktop processes things MUCH faster and I would miss that speed. 
Joel Short
www.buckeyestargazer.net
CFF135 f6.7, SV80ST, G3-16200M, QHY163M, QHY183M

Offline RickS

  • PTeam Member
  • PixInsight Jedi
  • *****
  • Posts: 1292
    • View Profile
Re: Improving PI speed
« Reply #6 on: 2019 March 11 20:55:26 »
I noticed something similar, Joel.  Linux was generally quite a lot faster than Windows but (with at least one set of data) StarAlignment with distortion correction was much slower.  I meant to dig a bit further and see if I could figure out what was going on but never got to it.

Are you saying that this was isolated to StarAlignment and that other scripts ran faster on Linux than on Windows?  I think I'll run another speed test with CosmeticCorrection and see how each performs.

I just noticed that most things were faster on Linux but StarAlignment, specifically with distortion correction, was a lot slower on Linux compared to Windows on my test data sets.  I wasn't running scripts.  I was playing around with my own data.