#Quantum – Capacidades e información de los emuladores en Microsoft Quantum Development Kit (tienes 16TB de RAM?)

36626328074_f9372acb8f_b

Buenas!

Hoy es día de Microsoft Tech Summit en Toronto, así que aprovechare para dejar un par de datos sobre los emuladores de Microsoft Quantum Development Kit.

Cuando creamos un proyecto de Q#, podemos ver que en el mismo tenemos un archivo en el Q # y el otro en un lenguaje de programación estándar, por ejemplo, C#. El enfoque que ha tomado Microsoft en este caso está basado en un esquema de coprocesador. Es muy parecido a cómo se programa una GPU o FPGA. Una vez programadas, podemos llamar ese código desde entornos externos, como una CPU.

Como todavía no tenemos acceso a Quantum Computers físicos, Microsoft Quantum Development Kit nos permite utilizar emuladores para trabajar con Q#. Hay dos clases en [Microsoft.Quantum.Simulation.Simulators] que nos permiten ejecutar emuladores, donde podemos trabajar con un numero finito de Qubits. La principal restricción que tenemos sobre la cantidad de Qubits esta dada por las características de Hardware del equipo de desarrollo.

Clipboard02

Así para simular 30 Qubits, necesitamos 16 GB de RAM. Sin embargo, si queremos agregar un nuevo Qubit, es decir trabajar con 31 Qubits tenemos que duplicar la RAM: 32 GB de RAM. Si hablamos de 40 Qubits, tenemos que pensar en 16TB de RAM. Es por esto que, una de las opciones del simulador es utilizar la capacidad de Azure para las simulaciones que requieran 40 Qubits o más.

Por último, tengo que comentar que, Q# nos permite tener un nivel abstracción alto para trabajar con modelos de Quantum Computing. Y, si bien, en este momento utilizamos emuladores para la ejecución de los algoritmos que creamos en Q#, en un futuro cercano podremos ejecutar estos algoritmos directamente en una Quantum Computer.

Happy QCoding!

Saludos @ Microsoft Tech Summit

El Bruno

References

Images

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s