Here's a simple way to tell... presumably you are sequentially querying some number of devices through SNMP and you are wondering if parallelizing the task would result in a speedup. Just divide up the list of devices into N groups and run N copies of your program (one for each group) at the same time to see if it has any effect on the total running time.
in reply to synchronous or asynchronus, that is the question
Another metric you can look at is the wall-clock time versus the cpu-time of your program. If there is a large discrepancy, presumably it is due to waiting for replies from the devices you are querying.