Post Go back to editing

Local vs Network Libiio Context - (Local is slower)

Category: Software
Product Number: Libiio
Software Version: Libiio V0.26

Any ideas as to why running libiio on my custom Ultrascale+ board (interfacing with an AD9361) in "local:" context is slower, and takes up more CPU resources, than if I ran with "ip:localhost" context?

CPU Usage is at 50% total processing power (4 cores) when running in "local:"


Same processes just running with context "ip:localhost"

I also noticed that iiod comes up and takes up about 20% of the CPU so in total iiod + my app results in 50% CPU usage.

The interesting thing is when I perform buffer_refill() operations.
My program gives me stats on how many times it can loop a function that simply refills the buffer.

When running in local: I get about 10 loop cycles per second. When running in ip:localhost I get about 90 loop cycles per second. Same functions just different contexts.

Any thoughts would be appreciated but looks like its better to run in network context than it is to run in local which is very counter intuitive.

I am running libiio v0.26 on my board.