+ Reply to Thread
Results 1 to 13 of 13

Performance Improvements while using RTD

  1. #1

    Performance Improvements while using RTD

    Hi All,
    What is the best way to update each individual topic on an excelsheet?
    All examples which i have found are updating all topics instead of a
    single topic. This makes my excel very very slow.

    Can someone help?


  2. #2
    STEVE BELL
    Guest

    Re: Performance Improvements while using RTD

    Please explain what a "topic" is!

    --
    steveB

    Remove "AYN" from email to respond
    <[email protected]> wrote in message
    news:[email protected]...
    > Hi All,
    > What is the best way to update each individual topic on an excelsheet?
    > All examples which i have found are updating all topics instead of a
    > single topic. This makes my excel very very slow.
    >
    > Can someone help?
    >




  3. #3
    Forum Moderator Leith Ross's Avatar
    Join Date
    01-15-2005
    Location
    San Francisco, Ca
    MS-Off Ver
    2000, 2003, & 2010
    Posts
    23,258
    Hello aadyaa,

    I am assuming the RTD is a resistence temperature detector and you are using Dynamic Data Exchange (DDE) to update your worksheet. What system is Excel communicating with? Your host system may not support individual updates. You should check your manuals first.

    Sincerely,
    Leith Ross

  4. #4
    Tom Ogilvy
    Guest

    Re: Performance Improvements while using RTD

    http://support.microsoft.com/default...b;en-us;289150
    HOW TO: Set Up and Use the RTD Function in Excel 2002

    Similar to DDE as I understand it.

    --
    Regards,
    Tom Ogilvy


    "STEVE BELL" <[email protected]> wrote in message
    news:umknf.9540$Ea6.9370@trnddc08...
    > Please explain what a "topic" is!
    >
    > --
    > steveB
    >
    > Remove "AYN" from email to respond
    > <[email protected]> wrote in message
    > news:[email protected]...
    > > Hi All,
    > > What is the best way to update each individual topic on an excelsheet?
    > > All examples which i have found are updating all topics instead of a
    > > single topic. This makes my excel very very slow.
    > >
    > > Can someone help?
    > >

    >
    >




  5. #5
    STEVE BELL
    Guest

    Re: Performance Improvements while using RTD

    Thanks Tom,

    Afraid this concept is out of my reach...

    --
    steveB

    Remove "AYN" from email to respond
    "Tom Ogilvy" <[email protected]> wrote in message
    news:[email protected]...
    > http://support.microsoft.com/default...b;en-us;289150
    > HOW TO: Set Up and Use the RTD Function in Excel 2002
    >
    > Similar to DDE as I understand it.
    >
    > --
    > Regards,
    > Tom Ogilvy
    >
    >
    > "STEVE BELL" <[email protected]> wrote in message
    > news:umknf.9540$Ea6.9370@trnddc08...
    >> Please explain what a "topic" is!
    >>
    >> --
    >> steveB
    >>
    >> Remove "AYN" from email to respond
    >> <[email protected]> wrote in message
    >> news:[email protected]...
    >> > Hi All,
    >> > What is the best way to update each individual topic on an excelsheet?
    >> > All examples which i have found are updating all topics instead of a
    >> > single topic. This makes my excel very very slow.
    >> >
    >> > Can someone help?
    >> >

    >>
    >>

    >
    >




  6. #6
    Tom Ogilvy
    Guest

    Re: Performance Improvements while using RTD

    Believe RTD refers to RealTimeData. A feature (worksheet function name:
    RTD) introduced in xl2002 I believe. However, I think your answer is still
    appropo. I suspect excel queries the server for all topics at once.

    --
    Regards,
    Tom Ogilvy


    "Leith Ross" <[email protected]> wrote
    in message news:[email protected]...
    >
    > Hello aadyaa,
    >
    > I am assuming the RTD is a resistence temperature detector and you are
    > using Dynamic Data Exchange (DDE) to update your worksheet. What system
    > is Excel communicating with? Your host system may not support individual
    > updates. You should check your manuals first.
    >
    > Sincerely,
    > Leith Ross
    >
    >
    > --
    > Leith Ross
    > ------------------------------------------------------------------------
    > Leith Ross's Profile:

    http://www.excelforum.com/member.php...o&userid=18465
    > View this thread: http://www.excelforum.com/showthread...hreadid=492692
    >




  7. #7
    John.Greenan
    Guest

    RE: Performance Improvements while using RTD

    What is it you want to do? And why do you think that RTD is updating all
    topics. I've written several RTD servers and written lots of client software
    for RTD (it's a popular choice for financial data extraction from Bloomberg
    and Reuters, amongst others) and it's a hybrid push/pull mechanism, so I
    don't really understand the underlying question.

    Can you fill in more detail and I'll try to help.


    --
    www.alignment-systems.com


    "[email protected]" wrote:

    > Hi All,
    > What is the best way to update each individual topic on an excelsheet?
    > All examples which i have found are updating all topics instead of a
    > single topic. This makes my excel very very slow.
    >
    > Can someone help?
    >
    >


  8. #8

    Re: Performance Improvements while using RTD

    Hi John,

    I have a hybrid architecture consisting of java and MS Excel.
    My RTD server is a VB dll which obtains its data from java (using
    JIntegra). Basically java pushes the data to the VB side. Upon
    retrieval of data, I fire an update event which then forces excel to
    recalculate...basically excel calls the refreshdata function.
    Now basically I want to have various update events for each
    functionality. For example: one update event for market information,
    one update event for orders etc.
    The only way i can think of is to have various classes implementing
    IRTDServer within one dll. This way each extended class will have its
    own RefreshData and hence it narrows down my amount of data to be
    refreshed.

    Can you suggest some another/better way of achieving the same?

    thanks.

    John.Greenan wrote:
    > What is it you want to do? And why do you think that RTD is updating all
    > topics. I've written several RTD servers and written lots of client software
    > for RTD (it's a popular choice for financial data extraction from Bloomberg
    > and Reuters, amongst others) and it's a hybrid push/pull mechanism, so I
    > don't really understand the underlying question.
    >
    > Can you fill in more detail and I'll try to help.
    >
    >
    > --
    > www.alignment-systems.com
    >
    >
    > "[email protected]" wrote:
    >
    > > Hi All,
    > > What is the best way to update each individual topic on an excelsheet?
    > > All examples which i have found are updating all topics instead of a
    > > single topic. This makes my excel very very slow.
    > >
    > > Can someone help?
    > >
    > >



  9. #9
    John.Greenan
    Guest

    Re: Performance Improvements while using RTD

    I still don't understand what you perceive as the being the problem

    Look at the IRTD interface documentation....

    RefreshData
    Called when Excel is requesting a refresh on topics. RefreshData is called
    after the server notifies Excel that updates exist, and it returns a count of
    the topics to update along with the topic id and value for each topic.
    [http://support.microsoft.com/kb/285339/EN-US/]

    So Excel is only updated when there has been a change. So why create
    multiple RTD servers - the refresh data method should just send the changes
    to Excel that you have made after firing UpdateNotify???



    --
    www.alignment-systems.com


    "[email protected]" wrote:

    > Hi John,
    >
    > I have a hybrid architecture consisting of java and MS Excel.
    > My RTD server is a VB dll which obtains its data from java (using
    > JIntegra). Basically java pushes the data to the VB side. Upon
    > retrieval of data, I fire an update event which then forces excel to
    > recalculate...basically excel calls the refreshdata function.
    > Now basically I want to have various update events for each
    > functionality. For example: one update event for market information,
    > one update event for orders etc.
    > The only way i can think of is to have various classes implementing
    > IRTDServer within one dll. This way each extended class will have its
    > own RefreshData and hence it narrows down my amount of data to be
    > refreshed.
    >
    > Can you suggest some another/better way of achieving the same?
    >
    > thanks.
    >
    > John.Greenan wrote:
    > > What is it you want to do? And why do you think that RTD is updating all
    > > topics. I've written several RTD servers and written lots of client software
    > > for RTD (it's a popular choice for financial data extraction from Bloomberg
    > > and Reuters, amongst others) and it's a hybrid push/pull mechanism, so I
    > > don't really understand the underlying question.
    > >
    > > Can you fill in more detail and I'll try to help.
    > >
    > >
    > > --
    > > www.alignment-systems.com
    > >
    > >
    > > "[email protected]" wrote:
    > >
    > > > Hi All,
    > > > What is the best way to update each individual topic on an excelsheet?
    > > > All examples which i have found are updating all topics instead of a
    > > > single topic. This makes my excel very very slow.
    > > >
    > > > Can someone help?
    > > >
    > > >

    >
    >


  10. #10

    Re: Performance Improvements while using RTD

    Hi John,
    Based on your advise I now update only the relevant topics which have
    changed. However, I am still running into performance issues.

    I have a method(update()) which is called from java:

    function update()
    Debug.Print "Inside update"
    updateEvent.notify()
    end function

    function IRtdServer_RefreshData(...)
    Debug.Print "Inside RefreshData"
    function end

    So logically my output should be:
    Inside update
    Inside RefreshData

    However, if I have rapid updates coming in from the java layer,
    The output looks like
    Inside update
    Inside update
    Inside update
    Inside RefreshData

    Thus what user sees is a delayed data. Is there a way around this
    problem?

    thanks a lot for your help so far and i would appreciate if you could
    answer this as well.


  11. #11
    John.Greenan
    Guest

    Re: Performance Improvements while using RTD

    This is how RTD works. The point is that although Excel can be told that
    there are updates - via UpdateNotify - Excel does not have to process them if
    it's too busy. It's asynchronous - Excel is told that it has work to do and
    only does the work when it has the ability to do so. So, what you describe
    as "delayed data" is NOT delayed, it's just waiting for Excel not to be busy.


    If this is causing a problem then you should run Excel on a machine with two
    or more processors, bind Excel to one CPU and everything else to another CPU,
    then add in as much memory as you can afford (2GB as a guide). That'll run
    faster.

    Or you could wait for Excel 12 which will have a multi-threaded calculation
    engine that may help (cannot describe this in any detail - under NDA from
    Microsoft - google for Office 12 to see publicly available information. That
    might help with this.




    --
    www.alignment-systems.com


    "[email protected]" wrote:

    > Hi John,
    > Based on your advise I now update only the relevant topics which have
    > changed. However, I am still running into performance issues.
    >
    > I have a method(update()) which is called from java:
    >
    > function update()
    > Debug.Print "Inside update"
    > updateEvent.notify()
    > end function
    >
    > function IRtdServer_RefreshData(...)
    > Debug.Print "Inside RefreshData"
    > function end
    >
    > So logically my output should be:
    > Inside update
    > Inside RefreshData
    >
    > However, if I have rapid updates coming in from the java layer,
    > The output looks like
    > Inside update
    > Inside update
    > Inside update
    > Inside RefreshData
    >
    > Thus what user sees is a delayed data. Is there a way around this
    > problem?
    >
    > thanks a lot for your help so far and i would appreciate if you could
    > answer this as well.
    >
    >


  12. #12

    Re: Performance Improvements while using RTD

    Hi John
    Since what i am working on is a realtime application, the "delays" are
    not acceptable.
    However, I like your idea of exploring the hardware optimization
    options.
    What exactly do u mean by bind excel to one cpu? How does one go about
    doing it?

    thanks.


  13. #13
    John.Greenan
    Guest

    Re: Performance Improvements while using RTD

    Hi,

    The "delays" are not meaningful. There are always delays in real time data
    - it's never in real time. You should work outr some metrics on these so
    called delays and you'll see that they are within any meaningful tolerance.

    You can search MSDN for how to bind a process to a CPU.

    Regards,

    John
    --
    www.alignment-systems.com


    "[email protected]" wrote:

    > Hi John
    > Since what i am working on is a realtime application, the "delays" are
    > not acceptable.
    > However, I like your idea of exploring the hardware optimization
    > options.
    > What exactly do u mean by bind excel to one cpu? How does one go about
    > doing it?
    >
    > thanks.
    >
    >


+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1