2014-02-09, 09:34
Hi there
Like most of us I want to make the best out of the limited performance of the pi. For this I followed some popular suggestions, i. e.
Everything works really well and the interface is quiet snappy. It is only when I move the database to an external host, that the performance takes a significant hit (see stats below). FYI, this is my network setup:
Here's how long the rpi takes for different tasks, before vs. after moving the SQL database to the local server (times measured subjectively, with each task executed multiple times (except initial boot)).
So as you can see, in my case using an external server for the MySQL database renders the openELEC experience unusable. Notice, that even when absolutely no media share is set-up in the rpi, even then will it take 7-8 seconds to open the (empty) videos folder. Also, there is severe lag when navigating one level back or forth in the videos folder hierarchy.
What do you think could be the reason for this dramatic impact? As it stands, I might be keeping the database on the USB drive itself, at least for now.
Cheers, chefe
Like most of us I want to make the best out of the limited performance of the pi. For this I followed some popular suggestions, i. e.
- Use a speed-optimised build of openELEC (OpenELEC-RPi.arm-Rbej-Version-Gotham-Popcornmix-Branch(09.10.2013) / 20131009130752-r15789)
- Bought/installed the available media codecs
- Dual boot with SD card and USB pen drive
- Move the database storing the movie art content to an external device
Everything works really well and the interface is quiet snappy. It is only when I move the database to an external host, that the performance takes a significant hit (see stats below). FYI, this is my network setup:
- Windows Server 2012 Essentials, with username and password protected (SMB) network shares
- Installed MySQL 5.1.72 database on the windows server containing the network shares (installed using the Microsoft Web Platform Installer)
- The operating system of the server as well as MySQL and all of its databases are stored on an SSD
- Wired gigabit ethernet (I know the rpi only has 100 Mbit/s) on all media devices
- Average latency of the data connection between the rpi and the server = 1.2 ms
- All known devices have static IPs (the shares on openELEC don't use hostnames either, so no resolving)
- No huge movie collections as of now, N=34, only the movie share is set up in openELEC
Here's how long the rpi takes for different tasks, before vs. after moving the SQL database to the local server (times measured subjectively, with each task executed multiple times (except initial boot)).
- Initial boot: ~30 seconds vs. 3+ minutes (rpi has issues finding the databses, according to log file, so it first must create them)
- Subsequent boots: ~30 seconds, no difference
- With NO scraper enabled, opening the folder containing the movies: 1 second vs. 8 seconds
- With NO scraper enabled, starting a movie: 2-3 seconds vs. 10-20 seconds
- With NO scraper enabled, movie playback: fluid once started, no difference
- With NO scraper enabled, stopping a movie: instant vs. 1 second
- With scraper enabled, opening the folder containing the movies: 2 seconds vs. 12-15 seconds
- With scraper enabled, opening the movie library: 2 seconds vs. 13-20 seconds
- With scraper enabled, starting a movie: 2-3 seconds vs. 10-14 seconds
- With scraper enabled, movie playback: fluid once started vs. severe stuttering
- With scraper enabled, stopping a movie: instant vs. 10 seconds
So as you can see, in my case using an external server for the MySQL database renders the openELEC experience unusable. Notice, that even when absolutely no media share is set-up in the rpi, even then will it take 7-8 seconds to open the (empty) videos folder. Also, there is severe lag when navigating one level back or forth in the videos folder hierarchy.
What do you think could be the reason for this dramatic impact? As it stands, I might be keeping the database on the USB drive itself, at least for now.
Cheers, chefe