I am learning openCl and I noticed that most applications I have seen so far mostly create the memory buffer with clCreateBuffer and then use clEnqueueWriteBuffer to get the data in. Now I was wondering why do they not put it straight to the clCreateBuffer but do it in 2 steps??? is there a performance benefit or something?

Thanks in advance,

kind regards,