Source code for qikify.recipes.basic_ML_testing
import zmq
import msgpack
import time
[docs]class BasicMLTesting(object):
def __init__(self):
self.chip_buffer = []
self.recv_count = 0
[docs] def run(self, port = 5570):
self.port = port
print 'Running Basic Machine learning-based testing, listening on port %d ...' % port
self.context = zmq.Context()
self.socket = self.context.socket(zmq.REQ)
self.socket.connect("tcp://127.0.0.1:5570")
unpacker = msgpack.Unpacker()
try:
while True:
print 'Requesting chip instance ...',
self.socket.send('REQ:send_LCT')
unpacker.feed(self.socket.recv())
chip = unpacker.unpack()
if chip is not None:
self.recv_count += 1
self.chip_buffer.append(chip)
print 'received chip #', self.recv_count
print 'sending done to ATE simulator ...\n'
self.socket.send('REQ:done')
assert self.socket.recv() == 'RES:ack', \
'Error: invalid ack from ATE simulator'
except KeyboardInterrupt:
print '\nterminating basic ML testing.'