Parallel Computing for better performance?
September 12, 2014 6:35 PM   Subscribe

I have 3 older computers (4 to 8 years old) that run fine, and I use the best one in the living room as a sort of poor-mans HTPC. It was pretty good when it was new, but now days some of the bigger DVD rips and Blueray rips play back rather choppy.

Can I use Parallel Computing to hook these three machines up to increase performance, and if so can you point me to a tutorial that will explain it like I'm 5.
posted by ambulocetus to Computers & Internet (16 answers total)
 
If your fastest computer can't smoothly play dvd rips, maybe it would be best to just get a more recent computer. Either that or you have some other problem because playing dvd rips is not that compute intensive.

Posting your computer's actual specs and the MediaInfo dump of a troublesome rip will probably get you more helpful answers.

In any case, I seriously doubt that parallel computing will be the solution.
posted by ryanrs at 6:46 PM on September 12, 2014


No, this is not what parallel computing is used for. Parallel computing is for the kinds of compute-intensive problems that can be parallelized, that is, split into sub-tasks that are (ideally) independent of one another, so that computer A can do task 1, computer B can do task 2, etc., all at the same time (i.e., in parallel). Video playback is not this type of problem (at least, not on a single screen). With more information about what machines you have (hardware specs -- CPU, memory, video card, storage; software -- video playback software and operating system), perhaps AskMe could be more helpful with your actual issue (choppy playback).
posted by axiom at 6:47 PM on September 12, 2014 [3 favorites]


Best answer: BTW, if you were wondering why parallel computing will not help you, it's because passing the decompressed data between the machines is going to be more compute intensive than the decoding process itself.
posted by ryanrs at 6:50 PM on September 12, 2014 [3 favorites]


Best answer: There's no reasonable way to do this. I would make sure the newest one has adequate RAM (a cheap upgrade) and kill any apps, no matter how small, that run at boot. Delete any apps on it you don't use, just to clean it up. Make sure it has a fair amount of free disk space. Maybe scavenge a hard drive from an older machine, and use it to back up data.
posted by theora55 at 7:00 PM on September 12, 2014 [2 favorites]


Best answer: Easiest way? Download Handbrake and rip the files into something more playable, like .h264 .mp4 rips. Almost anything can play those.
posted by sanka at 7:00 PM on September 12, 2014 [1 favorite]


Response by poster: I'm always amazed at how quickly the hive-mind comes to the rescue. Thanks all. I know my best solution is to get a new computer, but that will have to wait until my income increases. As for the specs FYI I have an AMD Athlon(tm) 64 X2 Dual Core Processor with 2 gigs ram. It has a 250 gig HD running Xubuntu, and videos are on external 1T HD. All videos over 1.5 gigs no matter the format are troublesome.
posted by ambulocetus at 7:12 PM on September 12, 2014


The culprit here could easily be the external hard drive. The data transfer rate from an external hard drive (particularly if it's USB1.0) may not be enough to actually copy the entire video as fast as it's played for very high quality video.

Simple solution/way to test:
- Copy problematic video to internal drive
- Play.
posted by Ashlyth at 7:15 PM on September 12, 2014 [1 favorite]


Response by poster: That probably would help, but copying the files every time I want to watch one would be a pain. Would it be better to install the 1T drive on a different computer and use it like a file server?
posted by ambulocetus at 7:24 PM on September 12, 2014


Depends what you mean by 'install on a different computer' - if it's still attached by USB1 you'll have this problem (or worse) regardless of the computer it's attached to.

If you mean 'take drive out of external enclosure and attach using SATA internally to another computer' you're now limited by your home network speed - if it's all wired that might be okay.

Also might help:
- You're running ubuntu - type 'lsusb' in a terminal and see what it says the hard drive is attached to. If you have both USB1 and USB2 showing up, make sure it's attached to one of the USB2 ports (often these are only some of the USB ports on your computer in older systems.)
posted by Ashlyth at 7:33 PM on September 12, 2014


Any chance the processor's running too hot due to accumulated dust or something like that? When I had overheating problems with an old computer it initially manifested itself during video playback.
posted by XMLicious at 8:02 PM on September 12, 2014


No, but if you had a pile of DVD video to compress and could easily distribute the files, you might be able to compress in parallel.
posted by TheAdamist at 8:26 PM on September 12, 2014


The data transfer rate from an external hard drive (particularly if it's USB1.0) may not be enough to actually copy the entire video as fast as it's played for very high quality video

I think it is unlikely that the external disk is an issue unless it is plugged into a USB1 port on the computer. Back in the day it was fairly common for machines to have a mix of USB1 and USB2 plugs (just as computers now have a mix of USB2 and USB3). Use some tool or utility to see what USB speed the disk is using, or just try moving it to a different USB port. Make sure you're not daisy chaining the disk through a slower device (like connecting it to a USB port on a keyboard or display).

I would checksum a large file and time it, just to verify the disk speed:
~$ time cksum some-large-video-file
posted by ryanrs at 8:44 PM on September 12, 2014


Try running gkrellm or some other system monitor on your machines and monitor each of them remotely as a way of figuring out if the cpu, hard disk throughput, or network is where the bottleneck is.

Also, if you're using vlc or something, ping the vlc forums for help.
posted by sebastienbailard at 9:08 PM on September 12, 2014


Have you considered a little settop-box? (roundups: wirecutter, gizmodo)

There are even tiny little gumstick Android devices (with quad cores and 2GB of RAM) that can run XBMC. Or (X)Ubuntu.
posted by unmake at 3:16 AM on September 13, 2014 [1 favorite]


Count me among those surprised you're not getting better performance. I can stream from my several years old, low powered NAS over wifi to my Chromecast without any problems. I would not put it down to hardware capacity per se, but some kind of configuration issue. Some kind of monitor like gkrellm will significantly help and tell you where the bottleneck is. On Windows, I'd wonder about defragmenting the disk. Don't know if that applies on Ubuntu.

FWIW, in a Windows setup, I backed up my DVDs using MakeMKV, then Handbrake to convert to mp4. Stored on NAS (Synology which has free Chromecast tools for iOS and Android).
posted by idb at 7:40 AM on September 13, 2014


I am going to use this comment of yours -- 'I use the best one in the living room as a sort of poor-mans HTPC'

Define "best". How do you rate your PCs and how did you determine which one was the best? The one with the largest hard disk? The one with the most RAM? The one with the _fastest_ CPU? The one with the newest CPU family? The one with the newest GPU family?

What makes one PC "best" for a "HTPC" might not make it "best" for a server.

Next comment - "I have 3 older computers (4 to 8 years old) that run fine"

What are you running on them? When one is running as a HTPC, what are the other two upto? If you have a laptop or another machine as your primary machine and no one is actively using the 3 older computers, you are far better off selling those 3, getting one new machine and something like either a Roku or a Chromecast or equivalents. Then, you dedicate the one new machine to be the "server" and get your "client" to connect to it, and you will definitely see a better performance.

To address idb's comment - "Count me among those surprised you're not getting better performance. I can stream from my several years old, low powered NAS over wifi to my Chromecast without any problems. I would not put it down to hardware capacity per se" -- That's a little unfair. Your NAS is built for streaming and your chromecast is built for receiving streams and playing them. Your last line "Synology has free Chromecast tools" should tell you that. To compare that against a generic desktop that the OP has is not entirely an apples to apples comparison.

OP, there are ways to work things up, but at some point, you are going to have to upgrade something. At the very least, buy a small GPU for one of your desktops that is specifically a HTPC GPU. As everyone has pointed out, it's kind of hard to narrow down what could be causing the slow down .. to list things people have said -

1. The hard disk from which you are reading the huge rips could be slow. Even on a USB 2 link, your might be using an older HD with a slow read time.
2. The CPU / GPU on the desktop playing the videos might not be "good" enough. Maybe they don't have the right hardware decoders and are doing the decoding in software. Maybe the drivers are not set up correctly.
3. If you are streaming from one machine to the other, maybe the CPU on the server is not fast enough, doesn't have enough RAM / cache to quickly do what it's supposed to do.
4. Maybe your network is clogged. switching to N Wifi or LAN might work. Even on LAN, switching from 100 to 10000 gbe might make a huge difference.
5. If you are streaming from one machine to the other, maybe the client CPU is not fast enough.

If you could get some kind of a budget based on selling existing hardware, you might find it saves a TON of time rather than getting your current crop of machines to play videos nicely.
posted by the_hard_truth at 10:19 PM on September 14, 2014


« Older Westerns for Newbies   |   Mr. Teddy Bear can't pass the crumpets right now... Newer »
This thread is closed to new comments.