| Andrew Cooke | Contents | Latest | RSS | Twitter | Previous | Next

C[omp]ute

Welcome to my blog, which was once a mailing list of the same name and is still generated by mail. Please reply via the "comment" links.

Always interested in offers/projects/new ideas. Eclectic experience in fields like: numerical computing; Python web; Java enterprise; functional languages; GPGPU; SQL databases; etc. Based in Santiago, Chile; telecommute worldwide. CV; email.

Personal Projects

Lepl parser for Python.

Colorless Green.

Photography around Santiago.

SVG experiment.

Professional Portfolio

Calibration of seismometers.

Data access via web services.

Cache rewrite.

Extending OpenSSH.

C-ORM: docs, API.

Last 100 entries

Have to add...; Culturally Liberal and Nothing More; Weird Finite / Infinite Result; Your diamond is a beaten up mess; Maths Books; Good Bike Route from Providencia / Las Condes to Panul\; Iain Pears (Author of Complex Plots); Plum Jam; Excellent; More Recently; For a moment I forgot StackOverflow sucked; A Few Weeks On...; Chilean Book Recommendations; How To Write Shared Libraries; Jenny Erpenbeck (Author); Dijkstra, Coins, Tables; Python libraries error on OpenSuse; Deserving Trump; And Smugness; McCloskey Economics Trilogy; cmocka - Mocks for C; Concept Creep (Americans); Futhark - OpenCL Language; Moved / Gone; Fan and USB issues; Burgers in Santiago; The Origin of Icosahedral Symmetry in Viruses; autoenum on PyPI; Jars Explains; Tomato Chutney v3; REST; US Elections and Gender: 24 Point Swing; PPPoE on OpenSuse Leap 42.1; SuperMicro X10SDV-TLN4F/F with Opensuse Leap 42.1; Big Data AI Could Be Very Bad Indeed....; Cornering; Postcapitalism (Paul Mason); Black Science Fiction; Git is not a CDN; Mining of Massive Data Sets; Rachel Kaadzi Ghansah; How great republics meet their end; Raspberry, Strawberry and Banana Jam; Interesting Dead Areas of Math; Later Taste; For Sale; Death By Bean; It's Good!; Tomato Chutney v2; Time ATAC MX 2 Pedals - First Impressions; Online Chilean Crafts; Intellectual Variety; Taste + Texture; Time Invariance and Gauge Symmetry; Jodorowsky; Tomato Chutney; Analysis of Support for Trump; Indian SF; TP-Link TL-WR841N DNS TCP Bug; TP-Link TL-WR841N as Wireless Bridge; Sending Email On Time; Maybe run a command; Sterile Neutrinos; Strawberry and Banana Jam; The Best Of All Possible Worlds; Kenzaburo Oe: The Changeling; Peach Jam; Taste Test; Strawberry and Raspberry Jam; flac to mp3 on OpenSuse 42.1; Also, Sebald; Kenzaburo Oe Interview; Otake (Kitani Minoru) move Black 121; Is free speech in British universities under threat?; I am actually good at computers; Was This Mansplaining?; WebFaction / LetsEncrypt / General Disappointment; Sensible Philosophy of Science; George Ellis; Misplaced Intuition and Online Communities; More Reading About Japan; Visibilty / Public Comments / Domestic Violence; Ferias de Santiago; More (Clearly Deliberate); Deleted Obit Post; And then a 50 yo male posts this...; We Have Both Kinds Of Contributors; Free Springer Books; Books on Religion; Books on Linguistics; Palestinan Electronica; Books In Anthropology; Taylor Expansions of Spacetime; Info on Juniper; Efficient Stream Processing; The Moral Character of Crypto; Hearing Aid Info; Small Success With Go!; Re: Quick message - This link is broken; Adding Reverb To The Echo Chamber; Sox Audio Tools

© 2006-2015 Andrew Cooke (site) / post authors (content).

Image Processing with CUDA / Python (Dynamic Pipelines)

From: "andrew cooke" <andrew@...>

Date: Sun, 3 Aug 2008 13:20:21 -0400 (CLT)

I've been thinking about how best to apply CUDA to image processing
(particularly in astronomy, which is what I know).

Many image processing tasks are *very* suitable for parallelisation, since
the processing is "per-pixel" across several arrays (for example,
subtracting oen image from another).

So my idea is to write a parser (in Python) that accepts an expression in
a "language" that describes image processing and compiles that (literally)
to a CUDA process.

The motivation for this approach is to reduce the memory transfer overhead
compared to the alternative: a library of primitive operations.  If add,
multiple, etc are each separate primitives then data must be loaded for
each.  But in many cases it should be possible to combine these so that
all data are loaded just once, and the "per pixel" operation does several
steps.  Thie lowers the data transfer cost while at the same time grouping
the arithmetic processing into a single "chunk" (useful because it can run
while other data are loading).

It may not be clear that there is sufficient complexity, but my idea is to
support "error" and "uality" data too.

Andrew

Re: CUDA and astronomical image processing

From: andrew cooke <andrew@...>

Date: Sun, 8 Jul 2012 08:35:38 -0400

Hi,

I need to update my blog - it doesn't handle multipart mime messages like 
yours (which is why it wasn't displayed).

Anyway, no - I never got any further.  One reason was that I thought Theano
http://deeplearning.net/software/theano/ did a lot of what I was planning.  So
if you're looking for something like I described, you might want to consider
that.

Cheers,
Andrew


On Sun, Jul 08, 2012 at 11:47:42AM +0930, Andrew Cool wrote:
> Hi Andrew,
> 
> It's now 2012. Did you get anywhere with your CUDA processing?
> 
> Regards,
> 
> Andrew Cool
> 
> www.skippysky.com.au

CUDA and astronomical image processing

From: "Andrew Cool" <andrew@...>

Date: Sun, 8 Jul 2012 11:47:42 +0930

Hi Andrew,

It's now 2012. Did you get anywhere with your CUDA processing?

Regards,

Andrew Cool

www.skippysky.com.au

 

From: "andrew cooke" <andrew@...> 

Date: Sun, 3 Aug 2008 13:20:21 -0400 (CLT) 

I've been thinking about how best to apply CUDA to image processing

(particularly in astronomy, which is what I know).

 

Many image processing tasks are *very* suitable for parallelisation, since

the processing is "per-pixel" across several arrays (for example,

subtracting oen image from another).

 

So my idea is to write a parser (in Python) that accepts an expression in

a "language" that describes image processing and compiles that (literally)

to a CUDA process.

 

The motivation for this approach is to reduce the memory transfer overhead

compared to the alternative: a library of primitive operations.  If add,

multiple, etc are each separate primitives then data must be loaded for

each.  But in many cases it should be possible to combine these so that

all data are loaded just once, and the "per pixel" operation does several

steps.  Thie lowers the data transfer cost while at the same time grouping

the arithmetic processing into a single "chunk" (useful because it can run

while other data are loading).

 

It may not be clear that there is sufficient complexity, but my idea is to

support "error" and "uality" data too.

 

Andrew

 

 

All of us could take a lesson from the weather........ It pays no attention
to Criticism.

Comment on this post