-
Notifications
You must be signed in to change notification settings - Fork 249
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Raspberry Pi 2 100% CPU #57
Comments
Could you provide the output for the command: |
Build Date: 03-08-2016 It's this release: |
I've made a few commits that significantly improve performance. Something still doesn't sound right about the difference in performance between your RPi and RPi2. Could you try running this build as of 17b0016 and let me know how it performs? |
It's similar, high CPU (100% on a core) but the load is slightly lower. I connected my old Pi, but that version doesn't even have the version flag yet, the readme of that release is broken but the date is 2014-08-30. That version is maxing out around 15% with a .25 load. |
I'm unable to reproduce this on my RPi2, running the latest version shows approximately 10% CPU usage with 5 minute load average of 0.13 using On v0.5.0 it shows approximately 20% CPU usage and 5 minute average load of 0.22 with the same flags. Which version of rtl_tcp are you running? Did you build it from source or are you using the package available via raspbian? Can you provide performance values with no |
I'm running the latest version, compiled from git according these instructions: http://sdr.osmocom.org/trac/wiki/rtl-sdr When I run without symbollength CPU is 100% and load climbs to about 1 too, but I am barely getting any messages, maybe 2 in 5 mins where I get about 50 with the older version. |
It's possible the issue is related to cross compiling the binaries. I've attached a binary that was built on my RPi2 with go1.6.2 armv6l that has the desired performance, let me know if this performs any better. |
Yes much better! Looking at a 10% CPU with a 0.3 load. |
Perfect. Unless I can figure out exactly what is broken while cross-compiling for ARM I'll just have to build the ARM binaries on my RPi2 for release. I'll be creating a new release in the near future that will take care of this and incorporate some new performance improvements. Thanks for opening the issue, I probably wouldn't have ever caught it otherwise. |
Looks like cross-compiling for ARM statically links the binary while compiling on the RPi2 itself, it dynamically links with interpreter /lib/ld-linux-armhf.so.3. Not sure how to fix this other than building ARM releases on the RPi2. |
even using the rtlamr.tar.gz included here on my Pi 2 I'm seeing 81.4% CPU usage by rtlamr. Is there anything I can do to decrease that load? |
That sounds like an appropriate level of CPU usage for rtlamr. The only thing you can really do to reduce load is to use shorter symbol lengths with the
|
Oh I see, so if I only cared about my one meter (which according to meters.csv only transmits between 910 and 920 Mhz) then I could do a symbol length of 7 and set my centerfreq to 915M and should easily get the data I want? |
Maybe, you'd likely miss a lot of messages since the meter hops between all of the channels it transmits on and your radio will usually only hear messages occurring within the bandwidth it is listening for. A symbol length of 7 has an extremely narrow bandwidth, I would try 7, 8 and 9 to see which is most reliable. |
Thanks, apologies for hijacking a previous question with what ended up being an unrelated issue! |
I had an old version running until now on my RPi 1 with symbollength=7 and had about 30% CPU, now I upgraded to a RPi2 (clean distro of Raspbian), but with the same symbollength it is maxing out at 100%, with a load of 1.2.
It doesn't seem to miss packets but it's slowing down other processes.
The text was updated successfully, but these errors were encountered: