Set cell value performance problem with call order

Posted by: yyoshimura on 28 September 2020, 6:44 pm EST

  • Posted 28 September 2020, 6:44 pm EST

    Hi

    We have another performance issue with the call order of getting cell values and setting cell values in our real project. Please refer the attachment for reproduction. Here is the execution result on my development box.



    From the result we can see that if we mixed the getting cell values and setting cell values the performance is several times poorer than getting all cell values and then setting cell values sequentially.

    In real project, getting cell values and setting cell values calls are mixed so we hope that the performance can be improved by some means.

    Appreciate your help and thanks in advance.

    Regards

    Here is the spec of my development box.


    Reproduction sample program
    gcexcelperformance_Mixed.zip
  • Replied 30 September 2020, 8:40 am EST

    Hello,

    Thank you for the application. We can observe the degradation in performance. Hence we are discussing it with the developers [ID:3163] and will get back to you with an update soon.

    Regards,
  • Replied 5 October 2020, 3:27 pm EST

    Hello,

    yezawlinmmm50 said:
    [quote]Ruchir.AgarwalHello,
    Thank you for the application. We can observe the degradation in performance. Hence we are discussing it with the developers [ID:3163] and will get back to you with an update soon.
    https://www.grapecity.com/forums/documents-excel/set-cell-value-performance_2#hellothank-you-for-the-app]
    If you're looking for updates, then I would like to inform that I checked the escalated item and currently there are no updates on this. We will keep you updated with the progress on the reported item.

    Thanks,

  • Replied 5 October 2020, 5:27 pm EST

    Hi

    Thank your for your latest information.

    Documents for Excel is very crucial component in our product(the core of the core). We are putting lots of effort to improve the performance for the code outside the library and we are hoping that the issue can be resolved as soon as possible because we are approaching the release date dead line.

    If you are kind enough to inform us the latest progress periodically it'll be very helpful. Thank you for your always great support.

    Regards
  • Replied 6 October 2020, 6:14 pm EST

    Hello,

    I understand your concern is genuine and hence, have asked for an ETA from the team. I will update you as soon as I receive some information.

    Regards,
    Ruchir
  • Replied 21 October 2020, 10:40 am EST

    Hi

    Is there any progress on this issue after two weeks?
  • Marked as Answer

    Replied 21 October 2020, 5:39 pm EST

    Hello,

    The team has confirmed that this is an issue related to the GcExcel calculation engine. They are working over it and trying to fix it in v4.0, which is planned for mid December.
    Meanwhile, you can greatly improve the performance by implementing a workaround wherein, you can disable the calculation engine before getting and setting the values frequently [workbook.EnableCalculation = true/false]. With this, the performance at our end improves greatly (from 8 sec to 0.5 sec). The workaround will however have a disadvantage that the value you will get might be old/out of date value as the calculation engine is disabled. So, you set cell value, all its dependents will not be re-calculated.
    We regret for the inconvenience caused due to this performance issue.

    Kind Regards,
  • Replied 22 October 2020, 11:12 am EST

    Hi

    Thank you very much for your kind support.
    We confirmed that the performance is greatly improved by using the workaround you provided.
    Looking forward to V4 release and appreciate your great product!

    Regards
  • Replied 1 December 2020, 3:07 pm EST

    Hello,

    Can you please confirm once if you are using the calc engine during get/set operations a large number of times? The team plans to accordingly take some decision on it.

    Thanks,
Need extra support?

Upgrade your support plan and get personal unlimited phone support with our customer engagement team

Learn More

Forum Channels