예제 #1
0
    x = txs[:inp].reshape((-1, 28, 28, 1))

    hook = UserHook()
    with chainer.using_config('train', False):
        with hook:
            p = model(x)
    softmax_a = F.softmax(p)

    ans = np.argmax(softmax_a.data, axis=1)
    #idx = int(ans.data)
    print("pr:answer number =", ans)


if __name__ == '__main__':
    args = argparse.ArgumentParser()
    args.add_argument('-i', '--images', type=int, default=20)
    args.add_argument('-g', '--gpu', type=int, default=0)
    args = args.parse_args()

    # For GPU
    device = chainer.get_device(args.gpu)
    assert '@cupy' in str(device), "Supports Only GPU"
    print('GPU device is ', device)
    device.use()
    model.to_device(device)  # load model to GPU
    txs = cupy.asarray(txs)  # load data  to GPU

    var.n = -1  # No fault injection for Normal System case
    infer(args.images, model, txs, tts)
    copy_tree('dnn_params', 'original_data2')
예제 #2
0
args.add_argument('-f', '--faults', type=int, default=784, dest='faults')
args.add_argument('-F', '--Faults', type=int, nargs='+')
args = args.parse_args()

faultNo_list = args.Faults if args.Faults is not None else range(args.faults)
data_P = args.images
print("Run on Faults as", faultNo_list)

from mylist_block import mylist

d = mylist()
#print(d)
#for k in range(784):              # k:fault pattern No.
for k in faultNo_list:

    var.n = k
    #    if(k!=0):
    #        replace_userfunc(k)

    print("mylist=", d[k], k)
    #    for i in range(0,2):       # i:number of feeding image

    #        if(i!=0):
    #            replace_sample(i)
    #    print("input picture no=" ,i)
    #        subprocess.run("python3 sample.py",shell =True)
    sample2.infer(data_P)
    print('sample done')
    #        rename =  "list" + str(k)+"_no-"+str(i)
    rename = "list%d" % (k)
    #    rename2 = "cp -fr dnn_params "+ rename