コード例 #1
0
def main():
    parser = argparse.ArgumentParser(
        description='af vs sklearn logit comparison')
    parser.add_argument('-b',
                        '--backend',
                        choices=['default', 'cpu', 'cuda', 'opencl'],
                        default='default',
                        action='store',
                        help='ArrayFire backend to be used')
    parser.add_argument('-v',
                        '--device',
                        type=int,
                        default=0,
                        action='store',
                        help='ArrayFire backend device to be used')
    parser.add_argument('-d',
                        '--dataset',
                        choices=['iris', 'mnist', 'notmnist'],
                        default='iris',
                        action='store',
                        help='Dataset to be used')
    parser.add_argument('-t',
                        '--type',
                        choices=['simple', 'predict', 'benchmark'],
                        default='simple',
                        action='store',
                        help='Demo type')
    args = parser.parse_args()

    af.set_backend(args.backend)
    af.set_device(args.device)

    af.info()

    dataset = None
    if args.dataset == 'iris':
        dataset = read_and_preprocess_iris_data()
    elif args.dataset == 'mnist':
        dataset = read_and_preprocess_mnist_data()
    elif args.dataset == 'notmnist':
        dataset = read_and_preprocess_notmnist_data()
    else:
        parser.print_help()
        return -1

    print('------------')

    if args.type == 'simple':
        demo_simple(arrayfire_knn_demo, sklearn_knn_demo, dataset)
    elif args.type == 'predict':
        demo_pred(arrayfire_knn_demo, sklearn_knn_demo, dataset)
    elif args.type == 'benchmark':
        demo_bench(arrayfire_knn_demo, sklearn_knn_demo, dataset)
    else:
        parser.print_help()
        return -1
コード例 #2
0
def main():
    argc = len(sys.argv)

    device = int(sys.argv[1]) if argc > 1 else 0
    console = sys.argv[2][0] == '-' if argc > 2 else False
    perc = int(sys.argv[3]) if argc > 3 else 60

    try:
        af.set_device(device)
        af.info()
        logit_demo(console, perc)
    except Exception as e:
        print('Error: ', str(e))
コード例 #3
0
    return af.mean(payoff) * math.exp(-r * t)

def monte_carlo_simulate(N, use_barrier, num_iter = 10):
    steps = 180
    stock_price = 100.0
    maturity = 0.5
    volatility = 0.3
    rate = 0.01
    strike = 100
    barrier = 115.0

    start = time()
    for i in range(num_iter):
        monte_carlo_options(N, stock_price, maturity, volatility, rate, strike, steps,
                            use_barrier, barrier)

    return (time() - start) / num_iter

if __name__ == "__main__":
    if (len(sys.argv) > 1):
        af.set_device(int(sys.argv[1]))
    af.info()

    monte_carlo_simulate(1000, use_barrier = False)
    monte_carlo_simulate(1000, use_barrier = True )
    af.sync()

    for n in range(10000, 100001, 10000):
        print("Time for %7d paths - vanilla method: %4.3f ms, barrier method: % 4.3f ms\n" %
              (n, 1000 * monte_carlo_simulate(n, False, 100), 1000 * monte_carlo_simulate(n, True, 100)))
コード例 #4
0
# The complete license agreement can be obtained at:
# http://arrayfire.com/licenses/BSD-3-Clause
########################################################

import arrayfire as af
import sys
import os

if __name__ == "__main__":

    if (len(sys.argv) == 1):
        raise RuntimeError("Expected to the image as the first argument")

    if not os.path.isfile(sys.argv[1]):
        raise RuntimeError("File %s not found" % sys.argv[1])

    if (len(sys.argv) >  2):
        af.set_device(int(sys.argv[2]))

    af.info()

    hist_win = af.Window(512, 512, "3D Plot example using ArrayFire")
    img_win  = af.Window(480, 640, "Input Image")

    img = (af.load_image(sys.argv[1])).(af.Dtype.u8)
    hist = af.histogram(img, 256, 0, 255)

    while (not hist_win.close()) and (not img_win.close()):
        hist_win.hist(hist, 0, 255)
        img_win.image(img)
コード例 #5
0
from dg_maxwell import advection_2d
from dg_maxwell import utils
from dg_maxwell import global_variables

af.set_backend(params.backend)

#print(af.mean(af.abs(advection_2d.u_analytical(0) - params.u_e_ij)))

gv = global_variables.advection_variables(params.N_LGL, params.N_quad,\
                                          params.x_nodes, params.N_Elements,\
                                          params.c, params.total_time, params.wave,\
                                          params.c_x, params.c_y, params.courant,\
                                          params.mesh_file, params.total_time_2d)

print('start')
print(af.info())
#print(wave_equation_2d.dx_deta(gv.nodes[gv.elements[0]][:, 1], gv.xi_i, gv.eta_j))
#print(gv.nodes[gv.elements[1]][:, 1])
#print(af.np_to_af_array(gv.nodes[gv.elements[1]]))#[:, 0])
elements_nodes = (af.reorder(
    af.transpose(af.np_to_af_array(gv.nodes[gv.elements[:]])), 0, 2,
    1))  #[0, :, :])
#print(elements_nodes)

#dxi_dx_elements = (wave_equation_2d.trial_dxi_dx(elements_nodes[:, 0, :],\
#                   elements_nodes[:, 1, :], gv.xi_i, gv.eta_j))
#print(dxi_dx_elements.shape)
#print((wave_equation_2d.trial_dxi_dx(elements_nodes[:, 0, :],
#       elements_nodes[:, 1, :], gv.xi_i, gv.eta_j)).shape)
#print(wave_equation_2d.F_xi(gv.u_e_ij, gv).shape)
#print(wave_equation_2d.F_eta(gv.u_e_ij, gv).shape)