The Internet belongs to everyone. Let’s keep it that way.

Protect Net Neutrality
Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

OpenCL in BeeSmalltalk

No description
by

Carlos Ferro

on 11 November 2016

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of OpenCL in BeeSmalltalk

MonteCarlo simulation in PetroVR
Sampling
What is OpenCL?
OpenCL (Open Computing Language) is an open royalty-free standard for general purpose parallel programming across CPUs, GPUs and other processors, giving software developers portable and efficient access to the power of these heterogeneous processing platforms.
How does it work?
Results and conclusions
OpenCL in Bee Smalltalk
Bonus track:
Related stuff
Documentation
An Experience report
Multi-Cores
Graphic Adapters
(with many more cores)
OpenCL
We have the hardware!
...and we have a low-level platform!
Now, we only needed a problem...
...that we can solve using parallel computation
Collect and show results
Multiple uncertainties
Build/run multiple simulation worlds
Central moments
Percentiles
20 percentiles, every 5%
...and for arrays, it´s the same for every column!
periods
iterations
...already addressed with several processes, communicated by sockets
Open standard
for parallel programming
abstraction layer on the platform
OpenCL consists of an API for coordinating parallel computation across heterogeneous processors; and a cross-platform programming language with a well-specified computation environment.
API (set of functions in a DLL)
programming language (C99)
abstract specification and manual
Our BeeSmalltalk implementation
(finally!)
Help
Manual
Installation Guide
GUI
MC GUI
System Status
Results report
Testing
Communication
Release Notes
Blog post
Newsletter
Movie
This presentation
IT
Never (noticeably) worse with OpenCL
In some cases, much better performance
Little difference between CPU and GPU
Summary
Juan Vuletich
Cuis
M. Alejandra De Bonis
Help Desk
Full transcript