00 – Preface

August 3rd, 2010

The new CUDA.NET Tutorials category was created to collect and manage resources and materials for developers starting to work and develop with CUDA.NET library for various platforms.

The usual composition will be of articles on specific topics and gradually increasing complexity.

This post will include an additional Table of Contents for published articles as we go.

Table of Contents

  1. Preface

 

For any question or comment, please contact us through our email address: support (at) hoopoe-cloud.com.

CUDA.NET 3.0.0 Released

June 21st, 2010

Dear all,

We are happy to announce the release of CUDA.NET version 3.0.0.
This release provides support for latest CUDA 3.0 API and few more updates that will make programming with CUDA from .NET easier and faster.

Additions:

  • Support for CUDA 3.0 API
  • Added memset functions for CUDA class
  • Supporting new graphics interoperability functions
  • Improved generics support for memory operations
  • Added CUDAContextSynchronizer class

Improved memory operations
We employ GCHandle class to be used with generic memory copies in CUDA class. This method allows to work with every data type (existing vectors or user defined) natively in .NET. The implication is that now you can copy existing custom arrays of structures/classes (user data-types) to device with memory copy functions.

CUDAContextSynchronizer
This class was added to assist developers in multi-GPU and multi-threaded environments sharing the same device. It uses existing CUDA API to manipulate the context each thread is attached to and provides .NET means to synchronize between threads sharing the same device for different computations.
Find it under the Tools namespace, the documentation includes a description of how to use it.

We hope you will enjoy this release.
As always, please send us comments or suggestions to: support@hoopoe-cloud.com.

Vicodeo™ – Accelerated Video Decoding Library

May 11th, 2010

Dear all,

We are glad to introduce a new library for video decoding, Vicodeo™, featuring accelerated performance for faster than real-time decoding of H.264, MPEG-2 (and more) video streams – in managed environments (.NET / Java).

Video processing nowadays has become a computing intensive task. Being able to accelerate decoding and various processing tasks, opens the door for many types of applications and usage of video in life, from: high-quality films, security/surveillance cameras, live events, video conversations over the web and much more.

Our library provides many capabilities beyond real-time (+) decoding of 1080p (Full HD) streams:

  • Codec support: H.264, MPEG-2, VC-1 and more
  • Color space conversion from YUV 4:2:0 to RGB (accelerated)
  • Integrated parser for elementary/transport streams and video packets
  • Simple integration with DirectX or OpenGL
  • Faster than real-time decoding for 1080p even on low-end platforms
  • Optional immediate decoding of frames, without buffering
  • And more!

For more information: Video Decoding

GECCO 2010 – GPU Competition

January 15th, 2010

Dear all,

GECCO (GPUs for Genetic and Evolutionary Computation Conference) will take part this year between July 7th-11th, at Portland, Oregon, USA.

Rules and competition guidelines are published on the website provided by the link below.
Registration is open until June 4th, 2010.

Link to the competition GECCO 2010.

Thanks to Dr. Simon Harding, Memorial University, Canada, for the notes and update.

Encodeo™ – Video Transcoding on Demand

December 28th, 2009

We are glad to announce a new service added to Hoopoe™ for video transcoding on demand.

Using the service allows users to transcode (convert) existing video files from various formats to the recent H.264 standard, at unmatched quality, speed and price.

Using GPU acceleration, we can convert HD movies and beyond at least x10 faster compared to existing equivalents.

Encodeo™ is not just a video transcoding service – it is possible to define advanced parameters for the transcoding process, such as:

  • Resolution
  • Bitrate
  • Filters / effect to apply on source video
  • and more…

If you are interested to hear more about the service and potential to use it, please contact us at: support@hoopoe-cloud.com.

For more information:
http://www.hoopoe-cloud.com/Apps/Encodeo.aspx

OpenCL.NET 1.0.48 Released

December 7th, 2009

Hello,

We are happy to announce the availability of the so long waiting OpenCL.NET 1.0.48 library.

This version aligns with OpenCL 1.0.48 standard, and fully conforms with latest NVIDIA drivers for OpenCL (and as well on supported platforms).

In brief, this release of the standard added few API functions and modified some, to truly allow heterogeneous computing on a single system. An application can query for the existence of multiple computing devices on the system, also by different vendors (recognize the CPU and a GPU as compute resources) regardless of the vendor. Such that consuming different computing resources can be transparent.

For further details about standard features and changes please consult Khronos website.

For OpenCL.NET page and download, click here.

As always, you are invited to contact us at: support@hoopoe-cloud.com.

World Cloud Computing Summit 2009

November 30th, 2009

The 2nd annual cloud computing summit is about to take place in Shfayim, Israel, between December 2-3, 2009.

Following last year success, the event will cover recent developments and progress in cloud technologies. Presenting with top-of-the-line companies active in this field, including (partial list): Amazon, Google, eBay, IBM, HP, Sun, RedHat and more.

Additional “hands-on” labs and workshops are offered during the event for participants that would like to learn more about cloud technologies and integration possibilities.

We are also presenting Hoopoe at the summit, for GPU Cloud Computing, and providing a workshop on GPU Computing in general and Hoopoe as well.

This event ends 2009 and symbolically the last decade, marking cloud computing as a major development that we are about to see more and more in the next years.

You are invited to join us during the event.
Agenda
Registration

CIGPU 2010 – Computational Intelligence Session

November 30th, 2009

A special event is about to take place between 18-23 July, 2010 in Barcelona, Spain.

The session on Computational Intelligence on Consumer Games and Graphics Hardware (CIGPU 2010) will be part of IEEE World Congress on Computational Intelligence Conference 2010 (WCCI-2010).

Building on the success of previous CIGPU sessions and workshops, CIGPU 2010 will further explore the role that GPU technologies can play in computational intelligence (CI) research.  Submissions of original research are invited on the use of parallel graphics hardware for computational intelligence.  Work might involve exploring new techniques for exploiting the hardware, new algorithms to implement on the hardware, new applications for accelerated CI, new ways of making the technology available to CI researchers or the utilisation of the next generation of technologies.

“Anyone who has implemented computational intelligence techniques using any parallel graphics hardware will want to submit to this special session.”

Thanks to Dr. Simon Harding, Memorial University, Canada, for sharing this information with us.
In addition, the session will discuss using CUDA.NET for running related simulations on the GPU.

For more information: CIGPU 2010 Submissions

CUDA.NET 2.3.7 Released

October 26th, 2009

Dear all,

We would like to announce for the release of CUDA.NET 2.3.7.

This version addresses various issues with runtime API and types. The change was in data types and structures compliance with the native wrapper of CUDA Runtime API, to support cross-platform environments operating in 32 or 64 bit mode. The structures now support the SizeT structure we introduced in the previous CUDA.NET release.

Link to the download page.

Please send us your comments and feedback.

Regular expression for Amazon S3 URL

October 16th, 2009

Hello Everyone,

We added support for Amazon S3 storage services recently to Hoopoe. Following the previous article with our general account details, we wanted to share with you a regular expression we use for validating S3 URL as sources of data and files.

You may find more information about S3 naming conventions and requirements in the manuals available from http://aws.amazon.com/s3.

When submitting a task to Hoopoe with input/output sources from Amazon S3, one must specify the S3 URL of the resource. A simple format for a resource can be:
https://test-bucket.s3.amazonaws.com/dir1/input.bin.
With this example, the bucket of the user storing the object is called “test-bucket“, and the file for input is “dir1/input.bin”, called the key of the object (in the bucket).

This is a general form for S3 URL to make them accessible over the internet.

Regular Expression

We are using a regular expression to validate all Amazon S3 URLs with submitted tasks to Hoopoe.

In .NET (and general) manners, the RegEx is:
https://[a-z0-9][a-z0-9\-\.]*\.s3\.amazonaws\.com/[\w][\w\W]*

As you may see, the following limitations exist:

  1. For DNS compatibility, bucket names must be lower case and start with a letter or number
  2. In S3, and following DNS limitations, bucket names should not exceed 63 characters in length
  3. Object keys can be of variable length, must start with a valid character but can follow with other possible characters, also to denote paths (a file named: “dir/input.bin” is located under “dir” directory)
  4. In addition to the above, Hoopoe restricts S3 URL to be up to 256 characters in length

In case you find a mistake in the regular expression definition, whether possible URLs do not fit or it is permissive, please send us an email.
We also hope you may find this information useful for your own purposes.