Memi.Reflection

Private members of memi's thoughts

.NET in Realtime Programming

A few months ago a friend of mine asked me about my opinion of writing Real time apps with .NET. I told him that IMHO it's not a good idea, for various reasons.

Yesterday, in our Bloggers' Dinner, Ido told me that in his previous employer he developed real time apps with .NET, and that sometimes they outperformed native real time apps.

Does anybody in this blogsphere has any massive experience with realtime programming in .NET? How was the experience? Did it really worked so fast? Please drop me a line.

Posted: May 10 2004, 05:08 PM by memi | with 5 comment(s)
Filed under:

Comments

TrackBack said:

Memi asks about using .NET for real-time apps. Naturally, that depends on what kind of application you're writing and what is meant by real-time. Without direct way to access CPU interrupts, deal with direct memory access and assign interrupt priority...
# May 10, 2004 6:40 AM

David Levine said:

I don't see how plain-vanilla .NET can be considered as any sort of a realtime environment when the GC will suspend all application threads for an indefinite period of time to run finalizers, and the code in finalizers is unbounded.

IMO I'd have to know what definition they are using for realtime before anyone can evaluate if .NET is suitable.
# May 10, 2004 2:24 PM

Ido Samuelson said:

Hey there! I see you liked our talk :)

You can call me on 067-888150.

Basically making the real-time app in .net was based on nothing! .NET had NO market experience was released in the same month I started to work for that company. Since their was no MDX I had to write wrappers and to deal with a LOT of interops. The Application today can grab over 100 frames per second from a video grabber card with 16 inputs. write avi files from those frames (each frame around 300KB) ofcourse display all frames. And a LOT of logic for detections. The performance the application gets have no difference then other equiliant applications in today market. Hardware was then 512MB ram , AMD 2000+ and a 7200 Drive.

# May 11, 2004 1:56 AM

Ido Samuelson said:

One more note though,

When you write a real-time application you consider PERFORMANCE into any step! which mean you HAVE to write caching platform, instance pooling, IO pooling and even thread pooling. Does anyone really think their company have the time and money to do it better then the CLR?
# May 11, 2004 2:00 AM

Ido Samuelson said:

Read my post about it
# May 11, 2004 2:26 AM
Leave a Comment

(required) 

(required) 

(optional)

(required)