This is a migrated thread and some comments may be shown as answers.

Application is loading very slow

13 Answers 1142 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
Vijay Kumar Vegulla
Top achievements
Rank 1
Vijay Kumar Vegulla asked on 07 Oct 2010, 07:27 AM
I am experiencing very tuff problem with the applicaions designed using Win forms telerik suit as the application is loading very very slow. We thought it was because of the data it is being loaded but not, even the empty win form designed using Telerik suit is loading very slow. I am getting regrets from my clients. Is there any way that we can minimize this loading time. Please suggest us as soon as possible.

Thank you.

13 Answers, 1 is accepted

Sort by
0
Richard Slade
Top achievements
Rank 2
answered on 07 Oct 2010, 09:28 AM
Hi Vijay, 

Can you provide an example of how you are creating and showing a form, with loading data? 
If you create a new project with a single Telerik RadForm do you still experience this issue? 
Thanks
Richard
0
Vijay Kumar Vegulla
Top achievements
Rank 1
answered on 07 Oct 2010, 03:27 PM
Thanks Richard for responding. Yes I am having this problem with single Telerik win form not even with a single line of code in it. I did this with basic .NET project also. I clicked to open both executables there is far difference in loading time between these two. Can you show me the way to speed up this. Please help me.

Thanks
vijay
0
Richard Slade
Top achievements
Rank 2
answered on 07 Oct 2010, 03:45 PM
Hi Vijay, 

There shouldn't be so much difference. However, I'd first suggest checking to ensure that your Telerik assemblies are in the GAC. This will make some difference. (they almost surely are)

We weren't having performance issues, but we wanted to also speed up the loading of our application that is built entirely with Rad Controls. 

As part of the Installer for our application we run NGEN. To quote a passage from the MSDN website
The Native Image Generator (Ngen.exe) is a tool that improves the performance of managed applications. Ngen.exe creates native images, which are files containing compiled processor-specific machine code, and installs them into the native image cache on the local computer. The runtime can use native images from the cache instead using the just-in-time (JIT) compiler to compile the original assembly.
I have found this invaluable to help increase the first time performance of any forms that are loaded. 
You can read more about NGEN here: on MSDN

Let me know if this helps
Richard
0
Emanuel Varga
Top achievements
Rank 1
answered on 07 Oct 2010, 08:54 PM
Hello Vijay,

Please read this KB article explaining some performance considerations and some Tips and tricks on how to increase performance of your application.

Best Regards,
Emanuel Varga
0
Richard Slade
Top achievements
Rank 2
answered on 09 Oct 2010, 10:15 AM
Hi Vijay,

Did any of the suggestions here help at all?
Best wishes
Richard
0
Vijay Kumar Vegulla
Top achievements
Rank 1
answered on 11 Oct 2010, 06:35 AM
Hi Richard,

I did it using ngen.exe but it looks like doesn't work for me. I am still working on it in all possible ways, surely I will get back to you with my update.
I have a question on Telerik controls. Is it suggestable to use all the controls in a project from telerik? 

Thanks for helping me
Vijay
0
Emanuel Varga
Top achievements
Rank 1
answered on 11 Oct 2010, 06:44 AM
Hello Vijay,

It is always recommended to keep consistency in an UI, also Telerik controls are themable, so if you are planning on using themes in your application, all other controls would stand out and in my oppinion will give a non profesional look to the application.

Also i would suggest you take a look at the article I've posted on how to speed up applications with telerik components.

Hope this helps, if you have any other questions or comments, please let me know,

Best Regards,
Emanuel Varga
0
Richard Slade
Top achievements
Rank 2
answered on 11 Oct 2010, 07:04 AM
Hi Vijay,

You dont have to use all controls from Telerik. You can mix and match as you please, though in our case we do. Mainly for the reasons that Emanuel gave.
 
Couple of other things to ask. Do you have the telerik control installed on the same drive as the drive that you're running the project from? Do you have the Telerik assemblies in the gac?
You said that if you load a blank windows form and a blank telerik form then there is quite a difference. Have you added a timestamp to the start and end of the load to see what the difference is?

If you could let me know all this, then it may help.
Thanks
Richard
0
Richard Slade
Top achievements
Rank 2
answered on 11 Oct 2010, 07:51 AM
One other thinng Vijay. Remember that with NGEN, an application will need to be 'NGEN'd' each time the assembly changes, so if you are just debugging, then it's really not worth doing. This still would be worth comparing and considering for your release.
Richard
0
Brendan
Top achievements
Rank 1
answered on 23 Mar 2015, 05:13 PM
I realize this post is old but I seem to have the same problem.  I have an application where a form needs to display 300 pieces of data for a given record from linked SQL tables.  The layout I use is labels and textboxes on the form - note there are several page views in use.  I noticed that the form loading using RichTextBoxControls was slow - long story short I created a program that tested different scenarios and textboxes measuring the time to load the form and optionally populate the textboxes.

As a simulation, each form has a RadPageView with 5 pages of 60 text boxes for a total of 300 textboxes - this is a big system with lots of data.  The tests were averaged for 20 loads/unloads.  Based on the attached findings I realize I cannot use Rad controls for the textboxes as they have too much overhead.  This is unfortunate as I typically use Rad controls exclusively.  Since I am only loading a page of controls with minimal code, I can't see how I can make this any faster.

My best case scenario seems to be using MS textboxes on a Radform since I still want theme-ability and other Rad controls such as grid will be used on the form.  Note that in the attached jpg "load controls" means populate text boxes with data.

Not sure if i can do anything differently here?
0
Hristo
Telerik team
answered on 26 Mar 2015, 03:08 PM
Hi Brendan,

Thank you for contacting us.

Note that RadControls for WinForms can not achieve the same performance as the standard MS WinForms controls. This is because we provide rich appearances including themes, animations and scaling. Nevertheless, we constantly try to optimize the performance and the memory consumption for our controls. We are taking seriously any reports regarding the speed of our controls.

Please note that the elements inside each page of the RadPageView will be created at the moment they are needed. If it is suitable for you scenario you can set the Visibility of each page to true in a moment prior to populating the data. This trick reduced the time for loading 300 RadTextBoxControls on 5 separate RadPageViewPages from 900 ms to 100 ms:
void Form1_Load(object sender, EventArgs e)
{
    foreach (RadPageViewPage page in this.radPageView1.Pages)
    {
        page.Visible = true;
    }
}

I hope this information helps. Should you have further questions please do not hesitate to write back.

Best wishes,
Hristo Merdjanov
the Telerik team
 
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
 
 
0
Brendan
Top achievements
Rank 1
answered on 26 Mar 2015, 04:34 PM
Thanks Hristo.  As you can see from the screen I attached, the initial screen load is taking a lot of time.  The control population is not that bad.  In the case of the RMEB the time to just load the form is the same whether or not the RMEB's are populated.

The issue I have is that the forms will be opened and closed a fair bit during use and so the initial form load needs to be quick.  My tests show that loading the form with no controls populated still takes a fair bit of time.

I don't see how the code you supplied will help this.  What you are suggesting seems a bit like the BeginUpdate/EndUpdate methods in the treeview for example.

Maybe I am looking at this wrong.  I could send you my sample project if you like.
0
Hristo
Telerik team
answered on 31 Mar 2015, 12:15 PM
Hello Brendan,

Thank you for writing back.

As you suggested perhaps it would be better that you send us your test project so that we can investigate exactly against your scenario.

Since the forums do not allow attaching projects you could upload it to some free server like Dropbox e.g. If you prefer you could also open a support ticket attach the project and continue our communication there.

Looking forward to your reply.

Regards,
Hristo Merdjanov
Telerik
 

See What's Next in App Development. Register for TelerikNEXT.

 
Tags
General Discussions
Asked by
Vijay Kumar Vegulla
Top achievements
Rank 1
Answers by
Richard Slade
Top achievements
Rank 2
Vijay Kumar Vegulla
Top achievements
Rank 1
Emanuel Varga
Top achievements
Rank 1
Brendan
Top achievements
Rank 1
Hristo
Telerik team
Share this question
or