Bits&Chips actie voor OpenCL training

visitekaartje-achter-2013-VU bent op deze pagina terecht gekomen via de nieuwsbrief van Bits&Chips of op aanraden van een vriend of collega.

Uw doel is om een zware berekening of beeldverwerking te versnellen. Wij leren u dat door u enkele concepten aan te reiken, zodat u uw software op een andere manier ontwerpt en programmeert. Met veel snellere software als resultaat. Dit doen wij aan de hand van OpenCL, een programmeertaal voor parallelle processoren.

De training

In 3½ dag leert u:

  • Ontwerpen van een parallelle software architectuur,
  • Gebruik te maken van de grafische kaart als co-processor,
  • De programmeertaal OpenCL,
  • Parallelle algoritmes implementeren.

De helft is uitleg door de trainer, de andere helft practica. Op de 4de dag bespreken we een probleem gezamenlijk, om alles samen te laten komen.

Na de training kunt u (zonder speciale tools) langzame code herkennen, deze opnieuw ontwerpen en porteren naar de grafische kaart. U krijgt het lesboek en wat basis-software mee naar huis, zodat u eenvoudig verder kunt oefenen.

De data

De volgende 3 trainingen hebben al enkele aanmeldingen. Ze hebben een speciaal thema en doelgroep.

U kunt naar iedere training, als u OpenCL wilt leren. De gebruikte boeken zijn per training verschillend.

De kleine lettertjes

Enkele belangrijke aspecten van de training:

  • De voertaal is Engels, ivm trainees uit Europa.
  • Een goede basis-kennis van C is noodzakelijk. U kunt gratis een speciale thuisstudie opgestuurd krijgen.
  • U dient tijd in te roosteren om na de training te oefenen, zodat u niet snel alles snel weer vergeet.
  • U heeft een laptop nodig.
  • Het programmeren gebeurt meestal op een Linux-server. De basis-kennis hiervoor wordt ter plekke uitgelegd.

Aanmelding

De normale kosten voor de training zijn €1850 per persoon. Als u Bits&Chips noemt, krijgt u €100 korting.

Het enige wat u nu hoeft te doen is een mailtje te sturen naar trainings@streamhpc.com met daarin uw gewenste datum en/of onderwerpen. Wij sturen u daarna een vragenlijst terug als voorbereiding op de training.

Voor vragen kunt u terecht bij +31854865760 (kantoor) or +31645400456 (mobiel).

IWOCL 2019

On Monday May 13, 2019 at 09:30 the latest edition of IWOCL starts, not taking into account any pre-events that might be spontaneously organized. This is the biggest OpenCL-focused event that discusses everything that would make any GPGPU-programmer, DSP-programmer and FPGA-programmer enthusiastic.

What’s new since last year, is that it’s actually also more interesting place for CUDA-developers who like to learn and discuss new GPU-programming techniques. This is because Nvidia’s GTC has moved more to AI, where it used to be mostly GPGPU for years.

Since it’s now the last week of the early-bird pricing, it’s a good time to make you think about buying your ticket and book the trip.

Continue reading “IWOCL 2019”

Feedback & Privacy

thankyouThis field is huge and ever-changing, which means that certain old posts might need to get updated information. Also, most of our team is made by humans: a species famous for making all kinds of mistakes.

We care about what you say!

"Feedback is the breakfast of champions."
--Ken Blanchard
  • We are not native English speakers. Did we say something strange?
  • Is the site somewhat too technical or is it missing a bit of hard-core code examples?
  • Is some important information missing?
  • Is the publishing of the book or Eclipse-plugin taking too long?
  • Is the site too slow? (or broken in any other way?)
  • Do you have any compliments? We blush easily!

Tell us what you think by using the contact-page or sending an e-mail to feedback@streamhpc.com.

Privacy

We track the pages you visit with Piwik and Google Analytics, and we use this information to improve our webpage. For Google Analytics there is an opt-out tool, to be excluded from any webpage that uses it. For Piwik you have the choice to opt-out by using the form below. If you opt-out, please be kind to give us feedback on how we can improve our page.

OpenCL on the CPU: AVX and SSE

When AMD came out with CPU-support I was the last one who was enthusiastic about it, comparing it as feeding chicken-food to oxen. Now CUDA has CPU-support too, so what was I missing?

This article is a quick overview on OpenCL on CPU-extensions, but expect more to come when the Hybrid X86-Processors actually hit the market. Besides ARM also IBM already has them; also more about their POWER-architecture in an upcoming article to give them the attention they deserve.

CPU extensions

SSE/MMX started in the 90’s extending the IBM-compatible X86-instruction, being able to do an add and a multiplication in one clock-tick. I still remember the discussion in my student-flat that the MP3s I could produce in only 4 minutes on my 166MHz PC just had to be of worse quality than the ones which were encoded in 15 minutes. No, the encoder I “found” on the internet made use of SSE-capabilities. Currently we have reached SSE5 (by AMD) and Intel introduced a new extension called AVX. That’s a lot of abbreviations! MMX stands for “MultiMedia Extension”, SSE for “Streaming SIMD Extensions” with SIMD being “Single Instruction Multiple Data” and AVX for “Advanced Vector Extension”. This sounds actually very interesting, since we saw SIMD and Vectors op the GPU too. Let’s go into SSE (1 to 4) and AVX – both fully supported on the new CPUs by AMD and Intel.

Continue reading “OpenCL on the CPU: AVX and SSE”

Start your GPU-career here

GPUs have been our mysterious friends and known enemies for years, as they let us run code in expected and unexpected ways. GPUs have solved problems for many of our customers. GPUs have such a high rate of evolvement, that they’ll remain important for the years to come.

Problem is that programming GPUs is not an easy task. Where do you learn to program GPUs? We found these to be the main groups:

  • Universities
  • Research centers
  • GPU vendors (AMD, Nvidia, Intel, Qualcomm, ARM)
  • Self-study

This is far from enough. Add to that, that only a very select group learns the craft at a company. We’d like to change that, and we think now is the time for us to be able to deliver on this.

In January we’ll our internal training program will start with 4 to 8 developers. Focus in on fully understanding recent GPU-architectures, CUDA and OpenCL. It will consist of lectures, workshops, discussions, paper reading and ofcourse coding for one month. The months after that will have guidance, paper presentations, code reviews and time for self-study. The exact form will differ per person.

The hard side

The current measurable requirements are:

  • EU citizen or already having a working permit
  • Great at C/C++
  • High interest in algorithmic optimisations
  • Any performance improvement focus (i.e. Assembly, clean code) is a plus
  • Any GPU experience (i.e. OpenGL, DirectX, self-study) is a plus
  • High interest in performance
  • Willing to move to Amsterdam
  • Willing to work for Stream HPC for at least 2 years

The soft side

We’re looking for people that fit our culture and we think we can train. This means that the selection is based for a large part on “the spark”. Therefore the application starts with a speed date, and we’re sorry for not finding a better wording for this. This is a 20 minute discussion about what we like and what we don’t. This can be done via phone, Skype or in person, during the evening, in the weekends or during your lunch break.

How to apply

Read about our company culture. Look at the jobs we have open. These describe the requirements after the training. Then write us a motivational letter: explain us why this is exactly what you want, why you’re capable and why you’re a cultural fit. If you find it hard to write such letter, then just start with answering the list of requirements. It’s a big bonus to share code (Github, Gitlab, zip-file). Send your email to jobs@streamhpc.com

Other jobs

Feeling more senior? We have other jobs:

Texas Instruments DSP

Texas-Instruments-logo-designTI has a fully conformant OpenCL 1.1 implementation.

The below table is taken from http://downloads.ti.com/mctools/esd/docs/opencl/intro.html and shows which DSPs have OpenCL-support.

SoC System Khronos Conformance Installation Instructions
AM572 AM572 EVM OpenCL v1.1 Conformant Processor SDK for AM57x
DRA75x DRA75x EVM OpenCL v1.1 Conformant Processor SDK for DRA7x (Enabling OpenCL on DRA75x)
AM571 AM572 EVM OpenCL v1.1 Conformant Processor SDK for AM57x
66AK2H 66AK2H EVM OpenCL v1.1 Conformant Processor SDK for K2H
66AK2L 66AK2L EVM Not submitted for conformance Processor SDK for K2L
66AK2E 66AK2E EVM Not submitted for conformance Processor SDK for K2E
66AK2G 66AK2G EVM Not submitted for conformance Processor SDK for K2G

Theoretical Performance of the C66x

  • Fixed point 16×16 MACs per cycle: 32
  • Fixed point 32×32 MACs per cycle: 8
  • Floating point single precision MACs per cycle: 8
  • Arithmetic floating point operations per cycle: 16 2-way SIMD on .L and .S units (e.g. 8 SP operations for A and B) and 4 SP multiply on one .M unit (e.g 8 SP operations for A and B)
  • Arithmetic floating point operations per cycle: 164 2-way SIMD on .L and .S units (e.g. 8 SP operations for A and B) and 4 SP multiply on one .M unit (e.g 8 SP operations for A and B)
  • Load/store width 2 x 64-bit 2 x 64-bit Vector size (SIMD capability): 128-bit (4 x 32-bit, 4 x 16-bit, 4x-8bits)

GFLOPs

2 FLOPs – 2-way SIMD on .L1 (A side) such as DADDSP or DSUBSP
2 FLOPs – 2-way SIMD on .L2 (B side) such as DADDSP or DSUBSP
2 FLOPs – 2-way SIMD on .S1 (A side) such as DADDSP or DSUBSP
2 FLOPs – 2-way SIMD on .S2 (B side) such as DADDSP or DSUBSP
4 FLOPs – 4-way SIMD on .M1 (A side) such as QMPYSP (or CMPYSP, maybe not 4-way SIMD)
4 FLOPs – 4-way SIMD on .M2 (B side) such as QMPYSP (or CMPYSP, maybe not 4-way SIMD)
========================
16 FLOPs total per cycle per C66x CorePac (source)

Boards

A good starter board is the BeagleBoard X-15, and has OpenCL drivers. It has 2x C66X DSPs and 2x 1.5-GHz ARM Cortex-A15.

X15_TOP_SIDE

Should SPIRV be supported in CUDA?

Would you like to run CUDA-kernels on the OpenCL framework? Or Python or Rust? SPIRV is the answer! Where source-to-source translations had several limitations, SPIRV 1.1 even supports higher level languages like C++.

SPIRV is the strength of OpenCL and it will only get bigger.

Currently Intel drivers best supports SPIRV, making it the first target for the new SPIRV-frontends. It is unknown which vendor will be next – probably one which (almost) has OpenCL 2.0 drivers already, such as AMD, ARM, Qualcomm or even NVidia.

How interesting is SPIRV really?

So if SPIRV is really that important a reason to choose for OpenCL, I thought of framing it towards CUDA-devs on twitter in a special way:

Should CUDA 9 support SPIRV?

2 people voted no, 29 people voted yes.

So that’s a big yes for SPIRV-support on CUDA. And why not? Don’t we want to program in our own language and not be forced to use C or C++? SPIRV makes it possible to quickly add support in any language out there without official support of the vendor. Let wrappers handle the differences per vendor and let SPIRV be the shared language for GPU-kernels. Where do we need OpenCL or CUDA for, if the real work is defined by SPIRV?

What do you think? Leave your comment below how you see the future of GPGPU with SPIRV in town. Is 2017 the year of SPIRV?

And if you worked on a SPIRV-frontend, get in touch to continue your project on https://github.com/spirv. Yes, it’s empty right now, but you don’t know what’s hidden.

Code Review

Code reviews are one of the fastest ways to get the dev-team back on track in order to add performance to the code. We offer two types of code reviews, all safely under an NDA. This way you keep in control of the development, while getting expert-knowledge in.

A quick scan gives you an overview of the main ways to speed up the code and how it can be done.
This quick scan can be delivered in one week, if necessary, to give you the direction you may require in times of pressure.

Also, an extensive code review can provide all the necessary information for a redesigned architecture.

GPU-code (OpenCL, CUDA, Aparapi, and more)

Writing GPU-code and performing host-code can be tricky. The best method to learn CUDA or openCL is by doing. Nevertheless, you may need feedback sometimes to be sure you’re doing the right thing. We can check your code and give you a report with hand-on tricks to make it optimal.

CPU-code (Java, C, C++ and more)

Many CPU-codes, like Java, C, C++ and C# are written with functionality in mind, but not performance. Adding performance (cache-optimisation, memory-usage reduction, parallelisation of computations, adding OpenMP-threads, etc) is quite doable, but only when you know how. We can help you increase performance of the software through feedback and clear steps.

Let us help you!

If you are interested in this service, request more information today and we will get back to you as soon as possible. Of course, you can also contact us via phone (+31 6 45400456), or e-mail (info@streamhpc.com).

Events&Talks

StreamHPC gives talks at public and in-company events to explain what GPU-programming is, while focusing on the day’s theme.

You are welcome to attend these days, or you can request a talk about OpenCL and GPU-programming to be given at your event.

Agenda Talks

At the events in the list below Vincent Hindriksen will give a talk, or has given a talk.

DateLocation - LanguageDescriptionLink to programType
6 November 2013Nijkerk - EnglishAparapi and Project Sumatra: using GPGPU in JavaNLJUG J-Fall 2013Registration and NLJUG-membership required
31+31 October 2013Cambridge (UK) - EnglishUsing the GPU for Physics computations via OpenCLMosaic3DXRegistration required
4 October 2012Amsterdam - EnglishIntroduction to OpenCL on mobile processors, to make hackers&funders think of new ideas for products which were never possible before.Hackers and Founders (Amsterdam, NL) MeetupFree
20 September 2012EnglishOngoing work on the OpenCL plugin for Eclipse - presented remotely.
I cancelled this, because my work has not advanced enough.
PTP User-Developer Workshop Sept 18-20, ChicagoRegistration required.
28 June 2012Amsterdam - EnglishGPGPU-day organised by StreamHPC. No talks by us, but by many interesting speakers from many Dutch universities.Platform Parallel NLRegistration required.
Free for students and researchers in the Netherlands.
20 June 2012Delft - EnglishIndustry-session at HPDC'12 (session 4). "Parallel Programming for the Masses" about how to walk the road forward while on the road of legacy.HPDC'12Registration required.
15 June 2012Ede - DutchTalk at SDN about how to use GPU-programming in .NET, including introduction to GPU-programming.SDNRegistration required.
Free for SDN-members.
25 May 2012Amsterdam - EnglishIn-company talk about parallel and GPU programming to decrease power usage.Internal

Reservations

For reservations and requests, please mail to events@streamhpc.com.

Agenda Events

We are visiting or have visited the following events. This is perfect if you want to have a quick discussion with us.

DateLocationDescriptionLink to program
20-22 January 2014Vienna, AustriaA premier forum for experts in computer architecture, programming models, compilers and operating systems for embedded and general-purpose systems.HiPEAC
12+13 May 2014Bristol, UKAn annual meeting of OpenCL users, researchers, developers and suppliers to share OpenCL best practise, and to promote the evolution and advancement of the OpenCL standard.IWOCL
20 June 2013Amsterdam, NetherlandsAll about GPGPU in the NetherlandsApplied GPGPU-days
21+22 May 2013London, UKAll about HPC-techniques on low-power devicesLEAP-conference
26-28 February 2013Nürnberg, Germany873 exhibitors from 37 countries. Will focus on the processors with high-end compute-capabilities.Embedded World'13 Exhibition
21-23 January 2013Berlin, GermanyInternational conference on high-performance and embedded architectures and compilers.HiPEAC'13
18 December 2012Paris, FranceCancelled. Meetup by Paris HPC group. This talk will be about most efficient (GFLOPS / Watt) processors existing today.Very High Performance/Watt Processors: the Road to Exascale
17 December 2012Amsterdam, NetherlandsThe e-BioGrid project is part of the BiG Grid project to establish an e-infrastructure for life sciences.e-BioGrid and beyond
13 December 2012Brussels, BelgiumAll around GPUs, FPGAs and upcoming architectures.Symposium on Personal High-Performance Computing
5 + 6 November 2012Amsterdam, NetherlandsBig data event around Smart Systems, Cloud Computing, Mobile and Social Media. (I did a pitch talk here)Perfect Storm Europe
29 November 2012Eindhoven, NetherlandsAltera explains how FPGAs with an ARM-core can work for many types of problems.Altera Soc FPGA eventAltera SoC FPGA event
24 - 26 October 2012Eindhoven, NetherlandsTalks around multiscale science.Opening Symposium Eindhoven Multiscale Institute
26 September 2012Amsterdam, NetherlandsAlles over Grid-computing in Nederland.BiG Grid and beyond

Dutch: Gratis kennisochtend over de nieuwe generatie processoren

Ergens opgevangen dat grafische kaarten tegenwoordig ingezet kunnen worden voor zware berekeningen? Tijdens een koffiegesprek gehoord over vector-processors als aanvulling op scalaire processors? Dan wordt het tijd dat u de grote veranderingen op processorgebied op een rijtje krijgt om uw organisatie beter op innovatief gebied te kunnen sturen.

Zie https://streamhpc.com/education/gratis-kennislunch/ voor een uur uitleg op lokatie.

Voor wie is deze kennis-ochtend?

Bedrijven voor wie snelheid belangrijk is en grote hoeveelheden data moeten verwerken. Bijvoorbeeld rekencentra, R&D-afdelingen, financiele instituten, ontwikkelaars van medische software, algoritme-ontwikkelaars en vision-bedrijven. Ook investeerder met hitech-bedrijven in hun portfolio kunnen gratis op de hoogte gebracht worden van de huidige ontwikkelingen.

U heeft geen technische achtergrond nodig, maar u zult zich niet vervelen indien u bits&bytes spreekt. Wij vragen uw achtergrond aan te geven, zodat we de juiste details in het programma kunnen toevoegen.

Wat is het programma?

In het eerste uur hoort u hoe de huidige processor-markt veranderd zijn ten opzichte van enkele jaren geleden – en welke nieuwe software-ontwikkelmethodes zijn geintroduceerd. Daarna krijgt u een overzicht van de nieuwe oplossingen die beschikbaar zijn en hoe dit zich verhouden tot de bestaande. Dit geeft u dan voldoende inzichten om te bepalen of het toepasbaar is binnen uw bedrijf. Het uur wordt afgesloten met wat StreamHPC voor u kan betekenen, maar ook wat u zelf kunt doen.

In het tweede uur bespreken we enkele use-cases en is er tijd voor vragen. De use-cases die worden besproken zijn afhankelijk van de achtergronden van de aanwezigen; denk aan bijvoorbeeld Monte Carlo, physics, enzym-werkingen, matrix-berekeningen en neurale netwerken.

Wanneer?

Indien er minimaal 10 aanmeldingen zijn, wordt er een datum geprikt.

Indien u binnen uw bedrijf direct interesse heeft, is het mogelijk dat StreamHPC bij u langs komt om deze presentatie te geven aangepast aan uw achtergrond. Neem daarvoor contact met ons op.

Help us find our future COO

Is this a motto that goes with your personality? Then we want to talk with you.

About 7 years ago we were still dealing with the usual peaks and lows of consultancy.
I’d like to get your help to find our future COO to help streamline this growth.
You might have seen that there are hardly any new blog posts – now you know why. By helping us find that special person, there can be put more time of writing new blog posts again.
If you know the perfect person for this job in Amsterdam, please let them know there is this unique company looking for her or him. Sharing this blog-post would help a lot.
You can find more information in this job-post:

We all know that quality comes with attention to detail, but also that with growth the details are the first to be postponed. We seek help in handling daily operations during our growth. The most important tasks are:

  • Customer contact. You make sure the communication is regular and smooth with all our customers, making them more engaged and happy with us.
  • Sales follow up. You take over to discuss the needs of potential customers pre-sales has had contact with.
  • Team support. You help the development-teams to get even better by helping them to solve their daily and long-term problems.

The job is very broad, but is all around a listening ear and getting things done.

You have studied business administration or alike, and have a can-do attitude. You know how to work with technical people and are a real team-player. You understand how to develop and engage group dynamics.

Do you think this is a job written for you, then we would like to hear more from you! Send an email to jobs@streamhpc.com with a motivational letter and listing relevant experience.

Thanks for helping out!

If you got sent here, we hope to hear from you!

About Us

Stream HPC  is a software development company in parallel software for many-core processors. We provide professional software development services, training and consulting to help you increase compute performance in software while lowering hardware-costs.

We have 3 locations.

Stream HPC B.V. (Amsterdam)

Koningin Wilhelminaplein 1 – 40601
1062 HG Amsterdam
Netherlands, Europe

phone: +31 854865760 (office) or +31 6 45400456 (cell)

Visit us in Amsterdam

Stream HPC Hungary Kft. (Budapest)

Radnóti Miklós u. 2
Budapest, 1137
Hungary, Europe

Stream HPC Spain S.L. (Barcelona)

Plaza de Catalunya 1, 4th floor
Barcelona 08002
Spain, Europe

History

2010 – 2013: the freelancing years

The company started as a freelancing business, with one focus: Programming GPUs with OpenCL. It was though, as back then the G in GPU stood for “Graphics only”.

The name was “StreamComputing” = A high-performance computer system that analyzes multiple data streams from many sources live. The main goal was to create software algorithms that analyze the data in real time as it streams in to increase speed and accuracy when dealing with data handling and analysis, which was in line with that.

2014: first hope

Four years later the first employee, Anca, was hired. Later that year the freelancing business was was turned into a limited company. GPUs got more seen as data-processors and trainings were the main income. Projects were still small, GPGPU was a world of early adopters and most time was invested on trainings.

First contact was made with AMD, now one of our biggest clients.

2015-2017: initial growth

Stream grew to a handful of employees, and we did projects for HSA foundation, Stanford, AMD, Zeiss, Nokia, Philips and many lesser known companies.

Trainings were still done, but were by far not the main resource of income anymore. We tried some FPGA-work, but found that most promises were not implemented yet.

2017: a new name

We renamed the company to Stream HPC. There were several reasons. As we focused more on customers from Asia and North America, we needed the .com, which was unavailable. Getting the new name was quite a quest, but we got there: by customers we were often referred to as “Stream”, a business coach assured us that CPU-work would remain important and thus “HPC” was more important that “GPU”, and it was quite difficult to type streamcomputign correctly.

2017-2020: hitting all kinds of ceilings

The goal was to grow further, but this turned out to be more difficult than expected. All kinds of obstacles got in our way, and we even once shrunk in size. With trainings, coaching, reading and persistence, we got to understand the hurdles and finally could implement solutions. Looking back it was easy.

2021: Stream HPC Hungary

Hungary started as a group of freelancers. We were very happy with the quality provided by our Hungarian colleagues, and that was enough reason to invest more. We opened the new office in Q3.

The company now turned into a group of companies, and all was set up to extend the group more easily.

We grew back to 15 people by the end of the year.

2022: Benchmark.io

At ISC Benchmark.io was started. To help our customers do better benchmarks, we put all our knowledge into a separate product. Due to high demand for our consultancy services, it is in private beta only.

2022: Stream HPC Spain

Barcelona was opened in Q3.

The estimation is to grow to 25-35 people by the end of the year.

Slow Software Hotline

In the perfect world all software is fast, giving us time to do actual work. Unfortunately we live in an unperfect world, and we have to spend extra time controlling our anger as the software keeps us waiting.

Therefore we have opened the Slow Software Hotline – reachable via both phone and email. It has one goal: make you feel happy again.

Reporting is easy. Just name the commercial software that needs to be sped up and why. We’ll do the rest. If you need help with initial anger management due to the slow (and/or buggy) software, we’re happy to help with breathing practises.

Phone: +31 854865760

Email: hotline@streamhpc.com

We will not sit still until all software is fast. Speeding up all software out there. One at the time.

Winning demo of Tokyo Demo Fest 2013 uses OpenCL

flagThe Tokyo Demo Fest 2013 is one of the many demo-parties around the globe. At such parties is where great programmers meet great artists and show off what came out of their collaborations.

The winner of this year used OpenCL to compute real-time procedurally generated geometries. For the rest C++, OpenGL and Gamemonkey Script was used.

http://vimeo.com/59398253

Tech features: curl noise, volumetric textures, Perlin noise, mesh deformations, HDR/bloom, film grain, fractals, Hermite splines, Tweens and quaternion iridescent particles.

The creator, Tokyo-based Eddie Lee, has done more projects – be sure to visit his homepage. I hope more demosceners start using the power of OpenCL to get more out of their demo’s.

Do you see where below kernel is used? Hint: check the other videos of Eddie.

__kernel void curlnel( 
                      __read_only image3d_t volume,  
                      sampler_t volumeSampler,  
                      __global float4 *output,  
                      float speed 
                      ) 
{ 
    uint index = get_global_id(0); 
    uint numParticles = get_global_size(0); 
    float indexNormalized = (float)index/numParticles; 

    // read from 3D texture 
    float4 vertData = output[index]; 

    float3 samplePos = vertData.s012; 
    samplePos = samplePos+(float3)(0.5f); 

    float4 voxel = (read_imagef(volume, volumeSampler, 
                   (float4)(samplePos,1.0f))); 

    vertData.s012 += voxel.xyz*speed; 

    output[index] = vertData; 
}

According to GPUVerify (see previous post) the line starting with “float4 voxel” has an error.

StreamHPC flirts with ARM

 With the launch of twitter-channel @OpenCLonARM we now officially show a strong interest in ARM for compute. And we are not the only ones, as the twitter already has 80 followers (60 in 1.5 day and 12 retweets of the welcome-message).

ARM has made tremendous progress in both technology and market-share. With ARM-64, companies like NVidia (and maybe AMD) in the field, X86 seems to be getting a real competitor. This could happen because since a few years computers are fast enough and are not being replaced by a faster one, but a smaller one (tablet, phone) or extra one. By the rules of the market, current technologies are replaced by the ones that give those other needs. ARM is fast (enough), flexible in design, very cheap, low-power and passively cooled. The biggest obstacle seems to be only getting a standard for a docking-station to connect your mobile, tablet or watch to keyboard, mouse and large screen.

OpenCL is perfect for ARM, as it gives the computation-power to the intensive computations not already covered by hardware-support. In the world of X86 this interests high performance and big data companies, where on ARM this interests also more. Without the need for OpenCL you can already watch HD video, with OpenCL you can encode the video with MP4. This year you will certainly hear more about new possibilities of OpenCL on ARM.

What do you think. Why does Intel not sell IP to ARM-companies as many technologies could be reused? Could Intel be the next ARM as an IP-seller, or will they stay the defender of X86 for many years to come?

streamhpc.com is not affiliated with ARM.

Contact us

Thank you for your interest in our company and services. We will try to answer your question within 24 hours.

There are three ways to get in contact:

    First Name (required)

    Last Name (required)

    Email (required)

    Company (required)

    Phone number

    Your Message

    See ‘about us‘ for the address and other business-specific information.

    New grown-ups on the block

    Members of the band There is one big reason StreamHPC chose for OpenCL and that is (future) hardware-support. I talked about NVIDIA versus AMD a lot, but knowing others would join soon. AMD is correct when they say the future is fusion: hybrid computing with a single chip holding both CPU- and GPU-cores, sharing the same memory and interconnected at high speed. Merging the technologies would also give possible much higher bandwidths to memory for the CPU. Let us see in short which products from experienced companies will appear on the OpenCL-stage.

    Continue reading “New grown-ups on the block”