September 10, 2010

Upcoming talks and events

(all times/dates are PST)

I have a few conference talks and such in the next couple weeks, so I thought I’d send out some pointers.

If you are attending the Intel Developer Forum in San Francisco, I’ll be speaking on a panel discussing how to educate the next generation of computer scientists for the new paradigms of parallel processing. The Panel is called “Parallelism and Education: Navigating Through a Sea of Cores”, the session is on Monday 9/13 at 11am, right after the keynote. I’ve written about this session last month.

On Tuesday, September 14th, around noon, I’ll be appearing live on Intel Software Network TV, you can watch here.

Later that evening, I’ll be hosting a Pixel Bender Meetup at 6pm at the Mars Bar in San Francisco. All Pixel Bender developers are welcome to join me and talk Pixel Bender. More info and directions here.

The next week, I’ll be speaking at the NVidia Graphics Technology Conference in San Jose. My session is on Thursday, September 23rd at 11am and it is called “GPGPU in Commercial Software: Lessons From Three Cycles of the Adobe Creative Suite.” More information here.

If you attending IDF or GTC or you’ll be in San Francisco on the 14th, come by and say “hi!” Otherwise, I’m hoping that I’ll be able to post video or slides from my sessions soon after.

Of course, I’ll be at MAX as well and may have some surprising things there, but I can’t talk about that yet :)

9:00 AM Permalink
September 7, 2010

Pixel Bender Meetup San Francisco – Tuesday 9/14 at 6:00pm

Hey, this will be the second time I’ve attempted this, last year in Portland went pretty great.

Here is your chance to ask questions, make feature requests, report bugs and talk to other Pixel Bender developers. Hopefully, I’ll be able to get some other Adobe employees from my team and the Flash team to stop by as well.

We’ll be getting together at the Mars Bar, at 7th and Brannan, right around the corner from the Adobe SF offices where the Silicon Valley Flex User’s group meeting will start at 7pm.

The first few pitchers are on me. See you Tuesday!

for more info on the mars bar: http://www.marsbarsf.com/

11:49 PM Permalink

Pixel Bender Plug-in for Photoshop CS5 v2.1 posted to Adobe Labs

This release fixes a number of bugs from the first CS5 preview release and also adjust the image size limits when GPU processing to let you work with larger images on graphics cards with more memory. See the release notes for more information.

http://labs.adobe.com/technologies/pixelbenderplugin/

A great collaboration between the Photoshop and Adobe Image Foundation teams.

8:07 PM Permalink
September 3, 2010

Link Friday (long weekend edition)!

Here are some of the interesting Pixel Bender links I heard about this week.

Jono Kafkaris background subtraction

Jono Kafkaris background subtraction

Jono Kafkaris posted a background subtraction Pixel Bender filter (with actionscript source) on his blog.


Nathanael de Jager is working some face detection algorithms and is using Pixel Bender (I hope for more than the pixelation in this video!)

Share photos on twitter with Twitpic => Share photos on twitter with Twitpic
Ralph Hauwert is using Pixel Bender to mimic photo effects.

From the Archive, I also wanted to post some links:


Andy Li's treshold and chroma-key filter

Andy Li's treshold and chroma-key filter


In December of last year, Andy Li posted a Chroma-key and tresholding filter (including source) for Flash.

Pixel Bender Intro from Satya Meka on Vimeo.

In May, Satya Meka posted a tutorial video on Pixel Bender for non-programmers to his blog.

That’s all the links for this week, but watch this blog for more info on some upcoming talks, a Pixel Bender Meetup in San Francisco in a couple weeks and a job opening in my group!

11:36 PM Permalink
August 31, 2010

Parallelism and Education: Navigating Through a Sea of Cores (IDF Panel 9/13/10)

If you are attending the Intel Developer Forum in September and you are interested in education, I’ll be on the panel. “Parallelism and Education: Navigating Through a Sea of Cores” with a great group of other industry and academic folks. Paul Steinberg from Intel has posted an introductory post on his blog introducing some of the topics that we’ll be covering in the session.

I’ll be one of the ones representing the Industry side of the equation. While there seems to be some general agreement on the panel about some certain ground truths, there has been some very lively discussion on how best to educate current and future computer scientists in the new paradigms of parallel programming. This session could be a humdinger.

My personal position is that all software is parallel now. Nearly every system that software runs on, from the lowest end embedded systems, to huge data centers are sporting multi-core processors. However, multi-core computing isn’t the only environment software developers work today. Specialized processing units, like discrete GPUs and CPU/GPU hybrids are now very common across a large range of hardware. Distributed computing is widely used at the high-end. Even web programming is moving parallel with worker threads in javascript and my own team’s Pixel Bender in Flash.

If academia treats parallel programming and data structures like a specialized field of study, walled off into a couple courses and ignored by the general curricula, it will be doing a disservice to its students. A thorough grounding in parallel algorithms, data structures, computer hardware and theory integrated throughout the computer science curriculum is required.

While parallel programming is now a fact of life for software, hardware architectures and programming models are still evolving. Understanding the parallel programming concepts, algorithms and patterns and how they map to current hardware is far more important than the syntax or usage of any development library. Hardware will continue to evolve and new patterns will emerge. Without the grounding of theory mixed with the understanding of the hardware, tomorrow’s professionals will struggle to adapt. While I advocate the usage of libraries like OpenMP, TBB, Ct and Cilk for introductory classes, at some point, I think students need to be exposed to low-level threading, GPGPU programming (at the OpenCL or CUDA level), and SIMD so that they can understand what those libraries are doing for them and evaluate new libraries as they become available.

With a solid educational background, today’s students will be well equipped for tomorrow’s parallel future.

To find the panel, check the IDF Session Catalog. It is currently planned for Monday 9/13 at 11am (following the keynote).

Free passes are available to educators -Enter the code ACAWEB1 when you register.

See you there!

9:11 PM Permalink
August 28, 2010

Link Friday: All about the Oil Paint Tuts.

Two new Tutorials crossed my browser this week for the Pixel Bender plug-in for CS5. Both about the Oil Paint filter. Now folks, the Oil Paint filter is pretty awesome, but you know that you can run lots of other filters in the Pixel Bender plug-in too, right? :)

El tutorial primero es en español por mis amigos que hablan español: [CORRECTION: it is Portuguese, not Spanish, D’oh!]

(via http://canalphotoshop.info/2010/08/download-adobe-pixel-bender.html)

The second tutorial is in the Queen’s english, courtesy of Gavin Hoey:

Oil Painting Effect in Photoshop CS5 & Pixel Bender from Gavin Hoey on Vimeo.

12:38 AM Permalink
August 21, 2010

Link Friday for 8.20.10

Sambaverse by Ben Gomez Farrell

One post that got people excited this week was the announcement of the Sambaverse alpha from Ben Gomez Farrell. This is Ben’s description of what he is trying to accomplish: “I needed a tool that was smart enough to load an MP3, take a good stab at automatically detecting beats, break, loud sections, and different sections of the song – like verses and choruses.” And Pixel Bender? “I used Pixel Bender to get a huge speed increase when loading the sound initially. That was a lot of fun once I figured out how to get it working.”

Color keying with Flash Builder 4 by Luis Estevez

Color keying with Flash Builder 4 by Luis Estevez

Luis Estevez created a sample of using Pixel Bender to do color keying in the player. Here is his post in Spanish and English.

Flex 4 Fun by Chet Haase

Flex 4 Fun by Chet Haase

Chet Haase has written a book called “Flex 4 Fun” that includes at least a chapter on Pixel Bender.

"Pixel Bender: A Gradient… and Some Math" from David Van Brink

"Pixel Bender: A Gradient… and Some Math" from David Van Brink

Here is an older link, but one I just came across this week, from David Van Brink’s Omino Pixel Blog: “Pixel Bender: A Gradient… and Some Math.” I really like how he digs into the math to explain how it works. A great blog, and a nice filter too!

It is pretty amazing that every week I have new links to post from Pixel Bender developers. I’m going to try and work in some of the old links that I’ve got too as I go too. More links next week!

6:48 AM Permalink
August 16, 2010

Pixel Bender Toolkit 2.1 now available!

An update of the Pixel Bender Toolkit is now available via the Adobe Updater and from the Pixel Bender Developer Connection area on adobe.com. If you have installed After Effects CS5, Flash Professional CS5 or one of the suites that includes these applications, you will see the update listed in the available updates. If you installed the Pixel Bender Toolkit via downloading it on from Adobe.com, you will need to download the update and install it by following the installation instructions.

The majority of effort in the release was on bug fixes found late in the CS5 development cycle. There have been some good bugs reported in the Pixel Bender forums, some are fixed in this release and some will be fixed in a later release.

There has been one major change in the behavior of the Flash preview in this release. In the 2.0 version of the Pixel Bender Toolkit, if you have a kernel with two inputs, the filter was treated as a Flash blend shader. This resulted in some unexpected results, especially when compared to CPU or GPU previews. Now, when you have a two input kernel, we instead create a ShaderJob and use the two input images as inputs. Hopefully, this will make things a bit more consistent. In a future version of the Toolkit, we plan to make this behavior selectable, but the blend case seemed to be very uncommon.

Thanks for using these tools and providing good feedback! If you find any problems or have feature requests, please post them to the Pixel Bender forums!

11:52 PM Permalink
August 14, 2010

Linky Friday, lucky Friday the 13th edition

Hello again! I’ve been out of the office most of the week, so this will be a linkeriffic post:

David Lanearts 4D julia set

David Lanearts 4D julia set

David Lenaerts has been putting together some mind-blowing math-intensive Pixel Bender filters for a while now. This week he posted some more info (and source!) on how he achieved metaballs and 4D Julia sets using Pixel Bender: Marching Cubes using Pixel Bender: Metaballs / LoFi 4D Julia Set

SSAO using Pixel Bender

SSAO using Pixel Bender

Ben Hopkins (kode80) has posted the source code from his SSAO experiments with Pixel Bender to google code.

Photoshop User TV Episode 238

Photoshop User TV Episode 238

Photoshop User TV covers the Pixel Bender Plug-in for Photoshop (‘natch) in this week’s episode.

Thanks again to the community for your contributions!

12:17 AM Permalink
August 6, 2010

Linky Friday Part Deux

some new Pixel Bender – related links that have popped up on my radar this week:


Pixel Bender Kernel Viewer by Alexander Zats

Pixel Bender Kernel Viewer by Alexander Zats

Axelander Zats has created a nice web-based viewer for PBJ files.

Spotlight Filter by Ryan Phelan

Spotlight Filter by Ryan Phelan

This is the Spotlight filter from Ryan Phelan. This one isn’t new, I’ve been meaning to post to it for a while. The filter itself is nice, but I also like the UI that Ryan created for editing the spotlight parameters.

Don’t forget to tweet me your links: @pixelbender!

9:30 PM Permalink