title: usrp x310 full duplex: receiving flowgraph can cause underflow issue at transmitter side
body: <p>we are using one usrp x310 with two UBX 160 in a full duplex mode (one ubx for transmitting and the second one for receiving, with a 10G connection). In the code, two separate TX and RX flowgraphs are established (under a single process).
  top_block:</p>
  
  <pre><code>    self.txpath = tx_hier(...)
      self.rxpath = rx_hier(...)
      self.source = uhd_receiver(...)  # set up usrp, subdev: A:0
      self.sink = uhd_transmitter(...)  # set up usrp, subdev B:0
      self.connect(self.source, self.rxpath)
      self.connect(self.txpath, self.sink)
  </code></pre>
  
  <p>However, in the actual test, we found that once RX flowgraph is busy at processing data, the transmitter will suffer from severe underflow problem while sending packets. Sample rate is just 5Msps, using TX flowgraph alone will not have underflow and RX flowgraph alone no overflow either under the same sample rate. </p>
  
  <p>Since these two flowgraphs are separate, and that gnuradio will assign one thread to one block, it seems to me that processing data should not have impact at transmitting (independent). I am wondering how could this happen. I tried to use gr::hier_blocks::set_processor_affinity to separate core resources also, but it didn't work. Maybe blocks at transmitter can't get the resource it needs while RX flowgraph is busy at processing?</p>
  
  <p>Any explanations to this observation and any advice about how to tackle this will be greatly appreciated!</p>