Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6666421
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 26, 20262026-05-26T02:49:36+00:00 2026-05-26T02:49:36+00:00

I’m working on an in-browser Silverlight application that has some fairly compute-intensive operations, e.g.,

  • 0

I’m working on an in-browser Silverlight application that has some fairly compute-intensive operations, e.g., running an Inverse Discrete Cosine Transform, or a Fast Fourier Transform, hundreds of times a second. It would be valuable to be able to offload as much of this as possible onto the computer’s GPU. I know that there was some discussion of this with Silverlight 3 and 4, using pixel shaders, but the consensus was that because Silverlight 3/4 didn’t use hardware acceleration for their pixel shaders, and because their pixel shader language was limited to Level 2, it wasn’t going to result in much of a performance increase, if any.

However, supposedly Silverlight 5 has a much broader range of hardware-accelerated graphics, including a reasonably complete 3D pipeline. However, I haven’t yet heard if anyone has been able to leverage this pipeline for accelerating general purpose mathematical operations (like FFT’s, DCT’s, IDCT’s, etc). Has anyone tried that yet? Any pointers on where to start looking?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-26T02:49:37+00:00Added an answer on May 26, 2026 at 2:49 am

    I thought I’d post back what I’ve discovered so far. The short answer is that no, I don’t think that the 3D pipeline on Silverlight 5 can be leveraged for this sort of thing. On the one hand, from what I can tell, the pixel shaders and vertex shaders that are a part of the pipeline do, in fact, get executed on the GPU (unlike the 2D shaders in Silverlight 4, which were executed on the CPU).

    But that said:

    (1) Everything I’ve read says that getting data onto the GPU is very fast, but that for most machines, getting that data out of the GPU is much slower, on the order of milliseconds. That makes it unlikely that we could, say, load up the GPU with the data necessary to perform an FFT, perform the FFT, and then pull the data back faster than we could just do it on the CPU.

    (2) Silverlight 5 has a very limited set of instructions that it can execute on the GPU. Specifically, it’s limited to HLSL Level 2, which has a limited number of instructions and registers available. I doubt that it would be possible — at best, it would be very difficult and very slow — to model an FFT or a DCT within those limited instructions.

    (3) But even if we could get around those two limitations, from what I can tell, Silverlight doesn’t have any ability to read the results of the calculations the GPU is performing. Normal XNA (the framework on which Silverlight’s 3D features are based) has various GetData() or GetTexture() methods that I think you could use to read the results of a set of calculations. But those equivalent methods are missing in their Silverlight 5 versions. From everything I can tell, in Silverlight 5, the GPU is a write-only device. You load your shaders onto it, you load up your data, you pull the trigger, and you wave good-bye. Your code will never see those bytes again.

    If it turns out that I’m wrong on this, I’ll come back here and update this answer. But at least at the moment, it looks as if this is a dead-end.

    [Edit 10/10/11 – According to Shawn Hargreaves from MS, this isn’t supported in Silverlight 5. His guess as to why is that (a) it would be difficult to get it working consistently across all GPU drivers, and (b) for all but a tiny class of demo-ware-style problems, it wouldn’t make any sense. Oh well.]

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm parsing an RSS feed that has an ’ in it. SimpleXML turns this
That's pretty much it. I'm using Nokogiri to scrape a web page what has
I've got a string that has curly quotes in it. I'd like to replace
I have a French site that I want to parse, but am running into
I'm working with an upstream system that sometimes sends me text destined for HTML/XML
link Im having trouble converting the html entites into html characters, (&# 8217;) i
I have just tried to save a simple *.rtf file with some websites and
I want to count how many characters a certain string has in PHP, but
For some reason, after submitting a string like this Jack’s Spindle from a text
Basically, what I'm trying to create is a page of div tags, each has

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.