Support Board
Date/Time: Thu, 06 Feb 2025 04:44:39 +0000
Post From: Versions 2712, 2713 | New Timer Functionality and Apparent Performance Issues
[2024-12-04 04:44:00] |
Sierra_Chart Engineering - Posts: 18297 |
First, the changes with the timer functionality were only released as prereleases and once we were confident everything was fine, did we release of the Sierra Chart timer functionality which completely eliminates Windows resources related to timers, as the main release. Sierra Chart timers have been used, now for at least 4-5 months in our server environments. They are completely stable. All of our order routing processes use these. Including for the CME, which has sub millisecond order routing. There is a very significant performance gain due to the elimination, of Windows resources. All of our server processes benefited very significantly from this. In the first post we described, an error in the implementation due to an oversight. We did do testing, but when there are so many events occurring in real time, and we observe that dropping of timer events is working apparently as intended, we it did not realize there was this implementation error. Even after fixing this error, users are still reporting higher CPU usage as the result of, more frequent updating of charts. Correcting this did not seem to make much difference. More importantly we notice no freezing issues or any type of issues even when using a global chart update interval of 10 ms and 50 charts and some of them complex. Everything is just operating fine. Although we acknowledge we do not have multiple high resolution screens with many complex charts visible at the same time. We do not deny what users are telling us, but we are just very puzzled by it. We have now released version 2716 and we would like to know how that works. There are two new settings in Global Settings >> General Settings >> General >> Update Intervals >> Timer Management. We will try to get these documented before morning. And we will document the complete "theory of operation" for Sierra Chart timers. This may take a little longer. If this does not resolve the issue, we are out of ideas. Other than having to have an option for Windows timers for charts. Timer management is so efficient now, including minimizing the amount of messages in the message queue, that it has to be better than Windows. The only other thing that we can think of is that when Windows generates a timer message : WM_TIMER (the very same message code that we are using) it may be controlling the priority of the message. When you are interacting with Sierra Chart, through mouse/pointer events, and keyboard events this may cause, the timer messages to have a lower priority and the user interface input to have a higher priority. This is not something Sierra Chart is able to control. Whether this is true or not we do not know. But if it is true, it is not good because then excessive user input to Sierra Chart, can slow chart updates. ----- Update: When we explain about using too low of a Chart Update Interval, we are referring to using intervals, in particular under 50 ms and using this for a lot of charts. Using for example 10 or 20 ms and using this on a lot of charts. We are not implying, that you need to be increasing the global chart update interval to 1000 ms or 2000 ms or 5000 ms. It is using 10 ms on a large number of charts. The thing is we are using ourselves a global 10 ms update interval and not observing any issue. Sierra Chart Support - Engineering Level Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy: https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation For the most reliable, advanced, and zero cost futures order routing, use the Teton service: Sierra Chart Teton Futures Order Routing Date Time Of Last Edit: 2024-12-04 04:59:45
|