[mythtv-users] possible alternative to HDhomerun? TBS MOI

Russell Gower mythtv at thegowers.me.uk
Thu Apr 11 07:05:36 UTC 2013


On 11 Apr 2013, at 07:02, Alan Young <ayoung at teleport.com> wrote:

> Russell Gower wrote:
>> 
>> 
>> Well, I've had my MOI for about a week now, As supplied it's running a buildroot/ulibC userspace and a Kernel without NFS support or loadable module support, So i've rebuilt the kernel and installed Debian Wheezy to a SD card. I have it running a v0.26 slave backend from the debian-multimedia repo. 
>> I've currently got it recording to a NFS sever but the performance is questionable, it can manage a SD single recording, but seems to struggle with two. on Investigation it would appear to be network related, whilst recording two streams the kernel rpciod process uses around 60%CPU (mythbackend is around 35%) I've done some testing with IPERF and could't get it above 50mbits (where as my master backend to the same server hits 950mbits) so there is something wrong with it's network stack, but I'm not sure where to look.
>> 
>> Any ideas anyone or should I just right this off to experience?
>> 
>> R.
>> _______________________________________________
>>  
> Some random thoughts that may/may not help...
> 
> It appears the MOI might have a single core CPU which may limit its ability to split the streaming and network transmission work up.  What does the CPU usage show when it's streaming two feeds?
> 
> A google search on high cpu usage by rpciod seems to point to nfs activity.  The search results pointed to 2.6 kernels.  I think uses Wheezy 3.2 kernels.  So that might not be an issue.  Is the master backend running the same kernel as the MOI?
> 
> Are the nfs mount options the same on the MOI and the master backend?
> 
> A ulibC and busybox configuration uses a lot less RAM than a glibc based distribution.  It could be that with it using Wheezy it's now running out of RAM.  You should be able to recompile their kernel with the extra options and use their userspace.  Unfortunately, looking at their source, they are using 2.6.35.7.  So it may or may not have the rpciod issues seen by the search.  If it does, there are some patches floating about that may or may not help.
> 
> The other thing I noticed in their source is the "patch" has some prebuilt objects for the tuner.   I don't know if those are better/worse than the versions that are compiled by the other kernel.
> 
> I'm not sure if the 10/100 Ethernet is limiting it too.  From their config, it looks like it's using a SMSC911X driver.  If ethtool is available, maybe it can change the settings to offload work?  Check to see if it running half or full duplex?  Does the interface stats show any dropped packets?  Maybe try the usual voodoo of swapping ethernet cables and/or ports?
> 
> Alan

Yes it is a single core CPU and it only has 512mb of RAM, whilst typing this I've realised it's only using 384MB, looks like 128MB is being allocated to a frame buffer!, heres an extract from TOP whilst recording two programmes

top - 07:54:47 up 16:55,  2 users,  load average: 4.35, 2.11, 1.44
Tasks:  63 total,   1 running,  62 sleeping,   0 stopped,   0 zombie
%Cpu(s): 18.8 us, 23.8 sy,  0.0 ni,  7.6 id, 13.5 wa,  0.0 hi, 36.3 si,  0.0 st
KiB Mem:    350308 total,   327412 used,    22896 free,     1360 buffers
KiB Swap:        0 total,        0 used,        0 free,   129424 cached

  PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND                                                                     
 2158 mythtv    20   0  593m 165m 2628 S  52.6 48.4  71:45.02 mythbackend                                                                 
   16 root      20   0     0    0    0 S  26.1  0.0   5:40.12 rpciod/0                                                                    

I've tried using various mount options including the defaults and those that the master backend uses, I stopped trying to tune NFS when I released the NIC was only managing half it's theoretical throughput, i've checked and it is running 100/Full duplex it's connected to the same switch as the Master backend and the NFS server.

To clarify I'm running the Wheezy user space but I have to use the TBS kernel tree as the tuner drivers are only supplied as .o objects against that tree, I did have to do a small patch to the kernel to stop udev complaining about a missing system call.

My next move is to put back the stock firmware and redo the IPERF benchmarks if there is no improvement I'll contact moi support again (they've been very helpful so far).

Cheers
  Russell


More information about the mythtv-users mailing list