LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Why is the table so slow?

When using a table with a large number of cells (e.g. 20 columns and 800 rows the table becomes very slow. Is there a way to speed up?
See also the attachment.

Best Reguards
Michael
0 Kudos
Message 1 of 16
(3,650 Views)
Try to make the table display a smaller number of cells, ie. 2 or 3 rows. If you don't need to see the values, then just move the talbe out of the display area.

Joe
0 Kudos
Message 2 of 16
(3,650 Views)
Try only updating it when there is a change in the data you want to display. You are updating a large amount of data and every iteration of the loop when it is not necessary. Or if you are wanting to remove this from your main processing loop place it into a secondary while loop and use something like a notifier or a queue. Hope this helps.
BJD1613

Lead Test Tools Development Engineer

Philips Respironics

Certified LV Architect / Instructor
0 Kudos
Message 3 of 16
(3,650 Views)
Thank you for your answer, but I'm needing 5 visible rows.

Michael
0 Kudos
Message 4 of 16
(3,650 Views)
Thank you for your answer. In the real application I'm only updating the table when values have changed. But when I have nothing to update and I make this with a case-structure, the table is empty (see the attached file). Do you know how I can keep the data in the table otherwise. Excuse me, my English is not so good, I'm trying to improve this.
Michael
0 Kudos
Message 5 of 16
(3,650 Views)
Can you format the 5 rows into one spreadsheet string and display it in an indicator? Assuming you just want to "watch" the data.

Joe
0 Kudos
Message 6 of 16
(3,650 Views)
Sorry for the previous post, that does not work.

Joe
0 Kudos
Message 7 of 16
(3,650 Views)
Probably that problem is that you haven't created any data dependency between writing to the property node and executing the main loop. If you place a sequence structure around the writing to the property node to make sure that it happens before executing the loop it should help. See example. hope this helps.
BJD1613

Lead Test Tools Development Engineer

Philips Respironics

Certified LV Architect / Instructor
0 Kudos
Message 8 of 16
(3,650 Views)
I might of missunderstood your question... I think what you are asking to do is to use a shift register. to hold your data from iteration to iteration. If you right click on your while loop you can create a shift register. Wire you initial cluster to the left from outside your loop and then only update the shift register with changes inside your loop. THis will keep the value in the shift register from loop iteration to loop iteration.
BJD1613

Lead Test Tools Development Engineer

Philips Respironics

Certified LV Architect / Instructor
0 Kudos
Message 9 of 16
(3,650 Views)
Instead of writing directly to the indicator, create a local variable of it and write the data to the local variable and leave the indicator outside of the loop. This should improve on the speed but since you are writing so much data at a time, there is not very much room for speed improvement.

check the image for leaving the data as it is when not updating.

Joe
0 Kudos
Message 10 of 16
(3,532 Views)