OpenCL™ implementar un algoritmo de precios de opciones asiaticas

Recomendado para:

  • Dispositivo: Stratix® V GX

  • Quartus®: v17.1

author-image

Por

El siguiente ejemplo muestra una implementación de Open Computing Language (OpenCL™)™ de un algoritmo de precios de opciones de Asia. Una opción de Asia es una instrucción financiera cuyo precio depende de la ruta. La recompensa de tal opción depende del precio promedio en un número de puntos muestreados desde el momento de inicio hasta el momento de la madurez. Este ejemplo considera específicamente los precios de las opciones aritméticas de Asia.

Mediante el uso de múltiples núcleos y la extensión de proveedor de canales de Intel, este ejemplo muestra cómo implementar eficientemente una simulación de Monte Carlo para el precio de las opciones de Asia. El núcleo de la computación es un kernel que implementa el modelo Black-Scholes. Otros dos núcleos implementan un generador de números aleatorios Desencarado Mersenne, que se utiliza para suministrar números aleatorios al kernel Black-Scholes, utilizando canales como el mecanismo de comunicación. Por último, el resultado del kernel Black-Scholes se suma a otro kernel para producir el valor total de recompensa. Puede encontrar una explicación detallada en el código fuente en el paquete de ejemplo de diseño.

Este ejemplo también admite la ejecución simultánea en varios dispositivos OpenCL. Cada dispositivo se dedica a fijar los precios de una opción en Asia con un conjunto diferente de parámetros, lo que demuestra una descarga paralela escalable de muchos cálculos de precios de opciones.

Escalamiento del desempeño con varios dispositivos OpenCL

Funciones

  • Canales de extensión de proveedor
  • Punto flotante de doble precisión
  • Ejecución de varios dispositivos
  • Múltiples kernels, incluidos los kernels de elementos de trabajo únicos

Descargas

El ejemplo de diseño proporciona código fuente para el dispositivo OpenCL (.cl) y para la aplicación host. Para la compilación de la aplicación host, el paquete Linux incluye un makefile y el paquete de Windows incluye un proyecto de Microsoft Visual Studio 2010.

Se proporcionan las siguientes descargas para este ejemplo:

El uso de este diseño se rige por, y está sujeto a, los términos y condiciones del contrato de licencia de diseño de referencia de hardware.

Requisitos de software y hardware

Este ejemplo de diseño requiere las siguientes herramientas:

  • Intel® FPGA Software v17.1 o posterior
  • Intel FPGA SDK para OpenCL™ v16.1 o posterior
  • En Linux: GNU Make y gcc
  • En Windows: Microsoft Visual Studio 2010

Para descargar las herramientas de diseño de Intel, visite la página de descarga de OpenCL. Los requisitos para el sistema operativo subyacente son los mismos que los del SDK de Intel FPGA para OpenCL.

OpenCL y el logotipo de OpenCL son marcas comerciales de Apple Inc. utilizadas con permiso de Khronos.

* El producto se basa en una especificación de Khronos publicada y ha superado el proceso de prueba de conformidad de Khronos. El estado de conformidad actual se encuentra en www.khronos.org/conformance.

El contenido de esta página es una combinación de la traducción humana y automática del contenido original en inglés. Este contenido se ofrece únicamente para su comodidad como información general y no debe considerarse completa o precisa. Si hay alguna contradicción entre la versión en inglés de esta página y la traducción, prevalecerá la versión en inglés. Consulte la versión en inglés de esta página.