discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Using gr-perf-monitorx Ubuntu 16.04


From: Richard Mcallister
Subject: Re: [Discuss-gnuradio] Using gr-perf-monitorx Ubuntu 16.04
Date: Wed, 6 Jul 2016 13:17:35 -0400

Hey guys,

I managed to solve my problems with finding TFrozenDict and everything seems to work now (grc, the ctrlpot monitor, perf monitor, etc).

I was going to clone the apache-thrift library directly into my gnuradio installation and build (manually replace thrift), but before I messed any gnuradio stuff up, I manually copy and pasted the class from the src code into Thrift.py (where TFrozenDict is declared, initialized, and defined in the most up to date source code). That solved the ImportError; I also had to make a slight adjustment to TBinaryProtocol, had to a function readBinary to it (again, copy and pasted from the source code). This solved the issues. I basically found what needed to be updated by looking at the error output of gr-perf-monitorx, and comparing lines referenced to source code elsewhere.

I am going install gnuradio again in a separate directory using pybombs and then manually install thrift. I think there might some type of bug or missing dependency with PyBOMBs (I am however, using an older version of PyBombs, which could explain this) that can't install all of apache-thrift's dependencies, and then not installing thrift properly. That said, when I run "gnuradio-config --enabled-components" I see "* thrift" in the output, which the documentation and previous emails on the list say indicates that thrift's backend was installed properly, fully.

If anyone was interested about the RFNoC blocks, my assumption that the performance monitor would work but not say anything about the blocks was true. The only blocks from RFNoC that will show up in the GUI or the CtrlPort Monitor is whatever one is connected to the PC. In other words, which block(s) on the flowgraph connect to non-RFNoC blocks. It will show the buffer and runtime of the blocks.

-Richard

On Fri, Jul 1, 2016 at 10:29 AM, Richard Mcallister <address@hidden> wrote:
Hey all,

I'm trying to find a way to measure CPU usage and other measurements in some operation or flowgraph (the actual processes don't matter) and compare it to the same operation done after using RFNoC to shift the operations to a USRP. It seems like gr-perf-monitorx would be perfect.

Unfortunately, every time I run the script, one of two ImportErrors occurs. The first involved PyQt4 and Qwt5 (fixed by installing from source). The next is this:

Traceback (most recent call last):
  File "/home/rich/Desktop/repos2/target/bin/gr-perf-monitorx", line 54, in <module>
    from gnuradio.ctrlport.GrDataPlotter import *
  File "/home/rich/Desktop/repos2/target/lib/python2.7/dist-packages/gnuradio/ctrlport/GrDataPlotter.py", line 26, in <module>
    from gnuradio.ctrlport.GNURadio import ControlPort
  File "/home/rich/Desktop/repos2/target/lib/python2.7/dist-packages/gnuradio/ctrlport/GNURadio/ControlPort.py", line 11, in <module>
    from .ttypes import *
  File "/home/rich/Desktop/repos2/target/lib/python2.7/dist-packages/gnuradio/ctrlport/GNURadio/ttypes.py", line 9, in <module>
    from thrift.Thrift import TType, TMessageType, TFrozenDict, TException, TApplicationException
ImportError: cannot import name TFrozenDict

I've installed thrift 0.9.3 (because 0.9.2 is required for gr-perf-monitorx) and then reinstallled GNURadio using pybombs (by updating apache-thrift) to check if that resolved anything; I've also uninstalled and reinstalled thrift using pip (which shows version 0.9.3). Running "gnuradio-config-info --enabled-components" I can see "* thrift" on the list, so I know that GNU Radio has found it. Nothing changed.

Finally, running python from my terminal, I can't find TFrozenDict within thrift by using dir(thrift.Thrift). Does GNU Radio use a custom thrift, or is there a better way to install and update?

Thanks,

Richard McAllister

PS-does gr-perf-monitorx support RFNoC blocks? Its not mentioned online, but then, RFNoC is pretty new.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]