comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: Ready to quit after 25 years...
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Switch to threaded view of this topic Create a new topic Submit Reply
Re: Ready to quit after 25 years... [message #76669] Thu, 23 June 2011 16:26 Go to next message
Haje Korth is currently offline  Haje Korth
Messages: 651
Registered: May 1997
Senior Member
After some further debugging: As I mentioned above, drawing each
vector with the arrow function works fine; this is how I used to do
this in direct graphics as well. But in the new graphics system, the
system slows to a crawl after a few hundred vectors. This is no joy
when there are a total of 1500 vectors to plot. I tried to disabled
the refresh but there was no noticeable difference. So I profiled the
code and it looks like most of the time is spent in arg_present. I am
either doing something terrible stupid or this is a bug.

H


Routine Hit count Time self(ms)
Time/hit(ms) Time+sub(ms) Time+sub/hit(m
ARG_PRESENT 15894517
5461.5 0.0003 5461.5 0.0003
OBJ_ISA 3348410
4795.0 0.0014 4795.0 0.0014
IDL_CONTAINER::GET 681989
2721.2 0.0040 2721.2 0.0040
STRMATCH 17881
2444.6 0.1367 2444.6 0.1367
OBJ_NEW 254351
1547.8 0.0061 2111.7 0.0083
IDLITCOMPONENT::GETPROPERTY 941332
1174.2 0.0012 1174.2 0.0012
N_ELEMENTS 2999143
1017.9 0.0003 1017.9 0.0003
MIN 1219565
948.82 0.0008 948.82 0.0008
IDLITCOMPONENT::SETPROPERTYBYIDENTIFIER 11725
868.28 0.0741 2167.6 0.1849
IDLITCOMPONENT::SETPROPERTYATTRIBUTE 8259
798.33 0.0967 1306.3 0.1582
FINITE 1312885
790.30 0.0006 790.30 0.0006
IDLITWINDOW::ADD 234
555.82 2.3753 939.23 4.0138
IDLGRMODEL::GETPROPERTY 252340
500.59 0.0020 500.59 0.0020
IDLGRPLOT::GETPROPERTY 192002
429.31 0.0022 429.31 0.0022
IDLITPROPERTYDESCRIPTOR::GETPROPERTY 373935
362.35 0.0010 362.35 0.0010
IDLGRPLOT::GETDATAXYZRANGE 188275
345.12 0.0018 345.12 0.0018
IDLGRMODEL::GETXYZRANGE 188508
344.22 0.0018 344.22 0.0018
KEYWORD_SET 805378
330.33 0.0004 330.33 0.0004
OBJ_VALID 624301
291.53 0.0005 291.53 0.0005
IDLITCOMPONENT::QUERYPROPERTY 15921
217.92 0.0137 270.24 0.0170
IDLITCOMPONENT::GETPROPERTYATTRIBUTE 1832
208.52 0.1138 363.71 0.1985
IDLGRSRCDEST::GETFONTNAMES 56
193.31 3.4519 193.31 3.4519
MAX 280571
170.06 0.0006 170.06 0.0006
IDLNOTIFY 510
146.78 0.2878 146.78 0.2878
MAP_PROJ_FORWARD 1701
127.48 0.0749 127.48 0.0749
WHERE 160661
121.33 0.0008 121.33 0.0008
MAP_PROJ_INVERSE 1187
116.82 0.0984 116.82 0.0984
STRUPCASE 85200
110.42 0.0013 110.42 0.0013
IDLGRMODEL::INIT 1249
109.51 0.0877 109.51 0.0877
OBJ_DESTROY 7228
106.69 0.0148 219.98 0.0304
DEFSYSV 41244
97.067 0.0024 97.067 0.0024
STRCMP 58162
96.419 0.0017 96.419 0.0017
IDLGRPLOT::SETPROPERTY 9471
83.796 0.0088 83.796 0.0088
IDLITCOMPONENT::GETPROPERTYBYIDENTIFIER 2064
81.647 0.0396 124.20 0.0602
IDLITCOMPONENT::_GETALLPROPERTYDESCRIPT 19683
77.784 0.0040 77.784 0.0040
IDLITCOMPONENT::REGISTERPROPERTY 13120
76.795 0.0059 76.795 0.0059
IDLGRMODEL::CLEANUP 1249
75.328 0.0603 78.868 0.0631
IDLGRPOLYLINE::GETPROPERTY 26690
68.479 0.0026 68.479 0.0026
STRMID 91157
63.480 0.0007 63.480 0.0007
IDLITWINDOW::GETCURRENTVIEW 958
56.611 0.0591 492.36 0.5140
ISA 85055
50.592 0.0006 50.592 0.0006
IDLGRMODEL::SETPROPERTY 14160
49.784 0.0035 49.784 0.0035
GRAPHIC::QUERYPROPERTY 1468
48.408 0.0330 58.534 0.0399
IDLITCOMPONENT::GETFULLIDENTIFIER 20692
47.913 0.0023 47.913 0.0023
IDLITCOMPONENT::INIT 2529
41.184 0.0163 41.184 0.0163
GRAPHIC::VERIFYPROPERTY 1468
37.393 0.0255 136.72 0.0931
IDLGRGRAPHIC::GETDATAXYZRANGE 24727
37.326 0.0015 37.326 0.0015
GRAPHIC::_GETPROPERTY 1468
34.328 0.0234 53.927 0.0367
IDLGRMODEL::DRAW 958
33.976 0.0355 33.980 0.0355
IDLFFXMLSAX::PARSEFILE 12
32.999 2.7499 33.066 2.7555
IDLGRCOMPONENT::GETPROPERTY 28780
32.868 0.0011 32.868 0.0011
READF 1
32.194 32.194 32.194 32.194
IDLGRAXIS::GETPROPERTY 7306
31.470 0.0043 31.470 0.0043
TOTAL 8355
31.117 0.0037 31.117 0.0037
IDLITWINDOW::ONEXPOSE 3
31.058 10.353 403.19 134.40
GRAPHICSWIN::QUERYPROPERTY 1468
31.033 0.0211 90.286 0.0615
STRTRIM 30270
30.453 0.0010 30.453 0.0010
IDLGRSCENE::DRAW 9
30.328 3.3698 411.63 45.736
IDL_CONTAINER::COUNT 38007
29.555 0.0008 29.555 0.0008
STRLEN 74337
29.484 0.0004 29.484 0.0004
WAIT 3
28.304 9.4345 28.304 9.4345
IDLITDATA::CLEANUP 957
26.117 0.0273 227.57 0.2378
SIZE 26903
25.767 0.0010 25.767 0.0010
ARRAY_EQUAL 37016
25.272 0.0007 25.272 0.0007
IDLITPROPERTYVALUE::GETPROPERTYBYIDENTI 10438
25.233 0.0024 25.233 0.0024
GRAPHIC::GETPROPERTY 1468
25.198 0.0172 223.51 0.1523
IDLITCOMPONENT::CLEANUP 2191
24.622 0.0112 24.622 0.0112
IDLITWINDOW::CLEARSELECTIONS 232
24.259 0.1046 36.660 0.1580
IDLGRAXIS::SETPROPERTY 2388
22.948 0.0096 22.948 0.0096
IDL_CONTAINER::ISCONTAINED 4474
22.451 0.0050 22.451 0.0050
STRARR 24344
21.934 0.0009 21.934 0.0009
FILE_SEARCH 3
21.249 7.0829 21.249 7.0829
IDLFFXMLDOMNODE::GETNODEVALUE 1825
19.638 0.0108 19.638 0.0108
IDLITPARAMETERSET::REMOVE 726
18.640 0.0257 46.275 0.0637
IDLITWINDOW::INIT 1
17.711 17.711 17.820 17.820
_IDLITCONTAINER::GET 2566
17.588 0.0069 24.104 0.0094
STRPOS 24037
17.582 0.0007 17.582 0.0007
IDLITGRWINSCENE::GETPROPERTY 1468
17.412 0.0119 48.393 0.0330
ON_ERROR 44207
16.482 0.0004 16.482 0.0004
IDLITCOMPONENT::SETPROPERTY 8712
15.958 0.0018 15.958 0.0018
IDLITSYMBOL::DRAW 924
14.853 0.0161 306.11 0.3313
STRING 1714
14.819 0.0086 14.819 0.0086
GRAPHICSWIN::GETPROPERTY 1468
13.993 0.0095 292.82 0.1995
IDLGRPOLYGON::GETPROPERTY 3124
13.824 0.0044 13.824 0.0044
IDLGRMODEL::ADD 2255
13.812 0.0061 13.812 0.0061
IDLITPROPERTYDESCRIPTOR::SETPROPERTY 15264
13.792 0.0009 13.792 0.0009
CATCH 22942
12.664 0.0006 12.664 0.0006
IDLGRPOLYLINE::SETPROPERTY 3160
12.582 0.0040 12.582 0.0040
IDLITWINDOW::GETPROPERTY 2941
12.436 0.0042 12.436 0.0042
IDLITWINDOW::ONMANIPULATORCHANGE 3
12.168 4.0559 15.683 5.2278
_IDLITCONTAINER::COUNT 1948
12.005 0.0062 13.516 0.0069
PTR_VALID 23211
11.963 0.0005 11.963 0.0005
IDLFFXMLDOMDOCUMENT::LOAD 4
11.554 2.8884 11.554 2.8884
OBJ_HASMETHOD 1160
10.766 0.0093 10.766 0.0093
IDLFFXMLDOMNODELIST::ITEM 1828
10.659 0.0058 10.659 0.0058
OBJ_CLASS 16575
10.541 0.0006 10.541 0.0006
_IDLITCONTAINER::REMOVE 232
10.241 0.0441 37.132 0.1601
IDLITWINDOW::SETMANIPULATORMANAGER 1
10.141 10.141 26.791 26.791
_IDLITVISUALIZATION::CLEANUP 1013
9.8343 0.0097 88.710 0.0876
AXIS_PROPERTIES 4404
9.5465 0.0022 9.5465 0.0022
_IDLITGRDEST::GETPROPERTY 1431
9.5016 0.0066 19.687 0.0138
_IDLITCONTAINER::GETBYIDENTIFIER 982
9.4694 0.0096 33.657 0.0343
ABS 15406
9.2416 0.0006 9.2416 0.0006
STRCOMPRESS 3098
8.8971 0.0029 8.8971 0.0029
IDL_CONTAINER::CLEANUP 1495
8.7072 0.0058 50.556 0.0338
IDLITSYSTEM::DOONNOTIFY 1000
8.6983 0.0087 58.080 0.0581
IDLGRMODEL::GETCTM 1408
8.6050 0.0061 8.6050 0.0061
STRTOK 4737
8.3797 0.0018 8.3797 0.0018
IDLITDATA::REMOVEDATAOBSERVER 924
8.1690 0.0088 236.22 0.2557
IDLITNOTIFIER::NOTIFY 994
7.9802 0.0080 205.09 0.2063
STREGEX 3256
7.8868 0.0024 7.8868 0.0024
IDLGRSYMBOL::SETPROPERTY 4620
7.6551 0.0017 7.6551 0.0017
IDLGRWINDOW::SETCURRENTCURSOR 39
7.5543 0.1937 7.5543 0.1937
IDLITUI::HANDLEONNOTIFY 1077
7.3758 0.0068 21.801 0.0202
IDL_CONTAINER::ADD 5044
7.2984 0.0014 7.2984 0.0014
IDLGRSYMBOL::GETPROPERTY 3243
6.9401 0.0021 6.9401 0.0021
FIX 2022
6.8179 0.0034 6.8179 0.0034
IDLITDATA::GETPROPERTY 924
6.7785 0.0073 10.895 0.0118
_IDLITCONTAINER::ISCONTAINED 925
6.5913 0.0071 12.751 0.0138
IDLITDATACONTAINER::ONDATADELETE 462
6.4131 0.0139 138.83 0.3005
PTR_FREE 5249
6.1040 0.0012 6.1040 0.0012
IDLFFXMLDOMNAMEDNODEMAP::GETNAMEDITEM 916
5.9491 0.0065 5.9491 0.0065
IDL_CONTAINER::REMOVE 3372
5.9406 0.0018 5.9406 0.0018
IDLITNOTIFIER::CLEANUP 961
5.8104 0.0060 12.839 0.0134
IDLITPARAMETER::QUERYPARAMETERDESCRIPTO 462
5.7897 0.0125 9.1728 0.0199
IDLFFXMLDOMNODE::GETATTRIBUTES 916
5.6315 0.0061 5.6315 0.0061
IDLITUI::CLEANUP 1
5.6312 5.6312 6.1430 6.1430
_IDLITLAYOUTMANAGER::GETPROPERTY 1431
5.5822 0.0039 8.4572 0.0059
MAP_CLIP_SET 3820
5.3705 0.0014 5.3705 0.0014
IDLFFXMLDOMNODE::GETCHILDNODES 912
5.2002 0.0057 5.2002 0.0057
REBIN 1918
5.1468 0.0027 5.1468 0.0027
IDLGRTEXT::GETPROPERTY 1580
5.0903 0.0032 5.0903 0.0032
IDLITPARAMETER::_DISCONNECTPARAMETERS 264
5.0669 0.0192 264.74 1.0028
_IDLITPROPERTYAGGREGATE::CLEANUP 1014
5.0283 0.0050 7.3544 0.0073
IDLITVISPLOT::CLEANUP 231
4.8800 0.0211 485.84 2.1032
IDLGRVIEW::GETPROPERTY 1430
4.7454 0.0033 4.7454 0.0033
N_PARAMS 10419
4.6782 0.0004 4.6782 0.0004
IDLITBASENAME 945
4.4721 0.0047 9.7473 0.0103
IDLITWINDOW::GETSELECTEDITEMS 120
4.3877 0.0366 4.7802 0.0398
STRJOIN 5426
4.3853 0.0008 4.3853 0.0008
CHECK_MATH 3851
4.3406 0.0011 4.3406 0.0011
IDLITPARAMETERSET::GET 759
4.0832 0.0054 12.225 0.0161
PTR_NEW 5136
4.0087 0.0008 4.0087 0.0008
IDLGRGRAPHIC::GETPROPERTY 1723
3.9957 0.0023 3.9957 0.0023
IDLITMANIPULATORMANAGER::CLEANUP 1
3.9671 3.9671 10.916 10.916
MAP_PROJ_GCTP_FORINIT 955
3.9003 0.0041 3.9003 0.0041
IDLFFXMLDOMNODE::APPENDCHILD 1029
3.8483 0.0037 3.8483 0.0037
IDLITDATA::_SETDATAOBSERVERS 462
3.8395 0.0083 41.863 0.0906
GRAPHICSMANIP::_AUTOSWITCH 37
3.8260 0.1034 29.623 0.8006
IDLITPARAMETER::CLEANUP 264
3.8035 0.0144 305.76 1.1582
_IDLITCONTAINER::CLEANUP 1545
3.7350 0.0024 6.1632 0.0040
FILE_TEST 4
3.7054 0.9263 3.7054 0.9263
IDLITWINDOW::CLEANUP 1
3.4944 3.4944 543.34 543.34
IDLITPARAMETERSET::CLEANUP 495
3.3883 0.0068 101.47 0.2050
IDL_CONTAINER::MOVE 460
3.3804 0.0073 3.3804 0.0073
IDLITOBJDESCPROXY::CLEANUP 37
3.3106 0.0895 5.1165 0.1383
IDLITPARAMETER::GETPARAMETERATTRIBUTE 462
3.1944 0.0069 15.436 0.0334
OPENR 1
3.1030 3.1030 3.1030 3.1030
IDLFFXMLDOMDOCUMENT::CREATEELEMENT 545
2.9698 0.0054 2.9698 0.0054
IDLITDATA::SETPROPERTY 462
2.9527 0.0064 4.4981 0.0097
CD 1
2.9052 2.9052 2.9052 2.9052
IDLITDATACONTAINER::CLEANUP 495
2.8809 0.0058 92.398 0.1867
IDLITDATACONTAINER::GETPROPERTY 462
2.7541 0.0060 8.8537 0.0192
TEMPORARY 5638
2.7336 0.0005 2.7336 0.0005
DOUBLE 14
2.6901 0.1922 2.6901 0.1922
IDLGRWINDOW::GETDIMENSIONS 983
2.6032 0.0026 2.6032 0.0026
TAG_NAMES 2111
2.5236 0.0012 2.5236 0.0012
DINDGEN 1969
2.5165 0.0013 2.5165 0.0013
IDLITDATAMANAGERFOLDER::ONDATADELETE 231
2.4616 0.0107 54.264 0.2349
IDLFFXMLDOMDOCUMENT::CREATETEXTNODE 484
2.4616 0.0051 2.4616 0.0051
DBLARR 2050
2.3959 0.0012 2.3959 0.0012
IDLGRMODEL::TRANSLATE 1881
2.3810 0.0013 2.3810 0.0013
IDLITOPSHUTDOWN::DOSHUTDOWN 1
2.3402 2.3402 628.32 628.32
REFORM 3994
2.2132 0.0006 2.2132 0.0006
IDLITPARAMETERDESCRIPTOR::GETPROPERTY 934
2.1329 0.0023 2.1329 0.0023
N_TAGS 4076
2.0537 0.0005 2.0537 0.0005
SQRT 2573
2.0258 0.0008 2.0258 0.0008
FLOOR 3822
1.9733 0.0005 1.9733 0.0005
IDLITDATA::CLEARMETADATA 957
1.9292 0.0020 2.3063 0.0024
IDLITIMESSAGING::DOONNOTIFY 462
1.9237 0.0042 28.673 0.0621
IDLGRMODEL::RESET 1881
1.9226 0.0010 1.9226 0.0010
MAP_PROJ_GCTP_REVINIT 955
1.8984 0.0020 1.8984 0.0020
CREATE_STRUCT 476
1.8164 0.0038 1.8164 0.0038
IDLGRSRCDEST::DRAW 6
1.6566 0.2761 41.475 6.9125
REGISTER_CURSOR 10
1.6331 0.1633 1.6331 0.1633
LINDGEN 1639
1.5680 0.0010 1.5680 0.0010
FILE_LINES 1
1.5186 1.5186 1.5186 1.5186
ROUND 1458
1.4826 0.0010 1.4826 0.0010
IDLITVISUALIZATION::CLEANUP 264
1.4696 0.0056 456.56 1.7294
IDLITTOOL::DOONNOTIFY 76
1.4186 0.0187 16.015 0.2107
PREF_GET 464
1.3413 0.0029 1.3413 0.0029
IDLGRPALETTE::SETPROPERTY 231
1.3299 0.0058 1.3299 0.0058
IDL_CONTAINER::INIT 1540
1.3034 0.0008 1.3034 0.0008
FLTARR 946
1.3001 0.0014 1.3001 0.0014
IDLITGRLAYER::GETWORLD 462
1.2441 0.0027 1.9886 0.0043
TRANSPOSE 957
1.2274 0.0013 1.2274 0.0013
ATAN 955
1.2058 0.0013 1.2058 0.0013
IDLITDATA::_FREEITEM 957
1.1654 0.0012 2.1519 0.0022
ASIN 955
1.1466 0.0012 1.1466 0.0012
IDLGRVIEW::SETPROPERTY 481
1.1364 0.0024 1.1364 0.0024
IDLGRVIEWGROUP::CLEANUP 1
1.1307 1.1307 539.79 539.79
SCOPE_VARFETCH 931
1.1016 0.0012 1.1016 0.0012
IDLITSYMBOL::CLEANUP 231
1.0822 0.0047 12.907 0.0559
IDLGRMODEL::SCALE 936
1.0759 0.0011 1.0759 0.0011
CEIL 1912
1.0740 0.0006 1.0740 0.0006
SORT 878
1.0552 0.0012 1.0552 0.0012
ULONG 936
1.0233 0.0011 1.0233 0.0011
IDLITOBJDESC::CLEANUP 99
0.9830 0.0099 36.848 0.3722
IDLITPARAMETERDESCRIPTOR::SETPROPERTY 462
0.8927 0.0019 0.8927 0.0019
PRINT 3
0.8781 0.2927 0.8781 0.2927
_IDLITCONTAINER::GETPROPERTY 462
0.8613 0.0019 1.1853 0.0026
IDLITOPERATION::CLEANUP 20
0.7858 0.0393 1.9612 0.0981
IDLGRTEXT::SETPROPERTY 305
0.7751 0.0025 0.7751 0.0025
IDLFFXMLDOMDOCUMENT::SAVE 2
0.6952 0.3476 0.6952 0.3476
BYTE 889
0.6673 0.0008 0.6673 0.0008
IDLITPROPERTYBAG::CLEANUP 99
0.6567 0.0066 1.1890 0.0120
_IDLITSYS_GETSYSTEM 465
0.6354 0.0014 0.8885 0.0019
IDLITMANIPULATORMANAGER::ONMOUSEMOTION 37
0.5895 0.0159 39.903 1.0785
SIN 955
0.5837 0.0006 0.5837 0.0006
IDLITTOOL::REMOVEONNOTIFYOBSERVER 37
0.5658 0.0153 0.8074 0.0218
IDLITOBJDESCTOOL::CLEANUP 62
0.5572 0.0090 36.572 0.5899
OBJARR 466
0.5423 0.0012 0.5423 0.0012
IDLITMANIPSELECTBOX::CLEANUP 1
0.5155 0.5155 0.5370 0.5370
APP_USER_DIR 1
0.4311 0.4311 0.4311 0.4311
PRODUCT 231
0.3887 0.0017 0.3887 0.0017
IDLITPROPERTYVALUE::SETPROPERTYBYIDENTI 181
0.3860 0.0021 0.3860 0.0021
IDLGRFONT::SETPROPERTY 196
0.3798 0.0019 0.3798 0.0019
IDLITIMESSAGING::STATUSMESSAGE 37
0.3792 0.0102 2.3100 0.0624
IDLITIMESSAGING::PROBESTATUSMESSAGE 37
0.3753 0.0101 8.2601 0.2232
BYTARR 257
0.3555 0.0014 0.3555 0.0014
IDLITTOOL::_GETSYSTEM 78
0.3553 0.0046 0.3553 0.0046
IDLITMANIPULATORCONTAINER::GETPROPERTY 37
0.3373 0.0091 1.0079 0.0272
_IDLITMANIPULATOR::GETPROPERTY 37
0.3275 0.0089 0.5516 0.0149
IDLITCONTAINER::CLEANUP 32
0.3200 0.0100 607.92 18.997
IDLITWINDOW::ONMOUSEMOTION 37
0.3129 0.0085 41.577 1.1237
LONARR 467
0.3121 0.0007 0.3121 0.0007
IDLSYSMONITORINFO::GETNUMBEROFMONITORS 1
0.3004 0.3004 0.3004 0.3004
STRLOWCASE 232
0.2905 0.0013 0.2905 0.0013
TYPENAME 234
0.2804 0.0012 0.2804 0.0012
IDLSYSMONITORINFO::GETRESOLUTIONS 1
0.2672 0.2672 0.2672 0.2672
IDLITFONT::CLEANUP 28
0.2543 0.0091 4.3888 0.1567
IDLSYSMONITORINFO::GETPRIMARYMONITORIND 1
0.2540 0.2540 0.2540 0.2540
IDLSYSMONITORINFO::GETRECTANGLES 1
0.2537 0.2537 0.2537 0.2537
GRAPHICSUI::ONNOTIFY 38
0.2371 0.0062 11.108 0.2923
IDLITTOOL::DISABLEUPDATES 38
0.2257 0.0059 0.2460 0.0065
GRAPHICSMANIP::ONMOUSEMOTION 37
0.2213 0.0060 29.845 0.8066
LONG 14
0.2158 0.0154 0.2158 0.0154
LANGUAGE_GET 234
0.2141 0.0009 0.2141 0.0009
IDLITOBJDESCVIS::CLEANUP 36
0.2083 0.0058 2.3312 0.0648
INDGEN 231
0.1958 0.0008 0.1958 0.0008
IDLGRVIEW::INIT 2
0.1895 0.0948 0.1895 0.0948
IDLITVISMAPGRIDLINE::CLEANUP 24
0.1871 0.0078 19.034 0.7931
REPLICATE 13
0.1439 0.0111 0.1439 0.0111
SYSTIME 30
0.1208 0.0040 0.1208 0.0040
IDLITIMESSAGING::GETTOOL 40
0.1205 0.0030 0.1205 0.0030
GRAPHICSUI::CLEANUP 1
0.1158 0.1158 6.2588 6.2588
_IDLITMANIPULATOR::CLEANUP 16
0.1131 0.0071 0.1478 0.0092
IDLGRVIEW::CLEANUP 2
0.1088 0.0544 538.08 269.04
IDLFFXMLDOMNODELIST::GETLENGTH 8
0.1069 0.0134 0.1069 0.0134
IDLGRPOLYGON::SETPROPERTY 29
0.1048 0.0036 0.1048 0.0036
IDLITSRVMACROS::RENAMEHISTORYFOLDER 1
0.1024 0.1024 1.0427 1.0427
IDLITSYSTEM::DELETETOOL 1
0.1024 0.1024 628.97 628.97
CLOSE 1
0.0919 0.0919 0.0919 0.0919
IDLITGRSCENE::DRAW 2
0.0890 0.0445 352.84 176.42
QUERY_EVENT_MASK 37
0.0733 0.0020 0.0733 0.0020
IDLFFXMLDOMDOCUMENT::GETELEMENTSBYTAGNA 4
0.0685 0.0171 0.0685 0.0171
SKIP_LUN 1
0.0669 0.0669 0.0669 0.0669
IDLITMANIPULATOR::CLEANUP 12
0.0648 0.0054 0.2495 0.0208
HEAP_NOSAVE 33
0.0645 0.0020 0.0645 0.0020
IDLITTOOL::GETSERVICE 2
0.0590 0.0295 0.9543 0.4771
SHIFT 74
0.0589 0.0008 0.0589 0.0008
IDLGRSCENE::INIT 1
0.0538 0.0538 0.0538 0.0538
IDLITVISAXIS::CLEANUP 4
0.0491 0.0123 2.3192 0.5798
IDLITVISDATASPACE::DRAW 8
0.0470 0.0059 351.64 43.955
BYTSCL 20
0.0443 0.0022 0.0443 0.0022
IDLITTOOL::_UNREGISTERUICONNECTION 1
0.0440 0.0440 0.0453 0.0453
ULONG64 69
0.0397 0.0006 0.0397 0.0006
IDLITSYSTEM::_REMOVETOOL 1
0.0374 0.0374 2.2592 2.2592
IDLITTOOL::CLEANUP 1
0.0369 0.0369 621.77 621.77
ROTATE 30
0.0364 0.0012 0.0364 0.0012
GRAPHIC::GETTOOL 2
0.0360 0.0180 0.0727 0.0364
_IDLITCONTAINER::REMOVEBYIDENTIFIER 2
0.0354 0.0177 4.2136 2.1068
IDLGRVIEWGROUP::INIT 1
0.0343 0.0343 0.0343 0.0343
IDLGRSCENE::ADD 1
0.0338 0.0338 0.0338 0.0338
IDLGRSRCDEST::GETPROPERTY 9
0.0332 0.0037 0.0332 0.0037
IDLITWINDOW::SETPROPERTY 1
0.0332 0.0332 0.0332 0.0332
MAKE_EVENT_MASK 24
0.0299 0.0012 0.0299 0.0012
IDLITMANIPULATORCONTAINER::CLEANUP 4
0.0299 0.0075 7.4235 1.8559
IDLFFXMLDOMELEMENT::GETELEMENTSBYTAGNAM 4
0.0266 0.0066 0.0266 0.0066
IDLFFXMLSAX::STOPPARSING 12
0.0262 0.0022 0.0262 0.0022
_IDLITGRDEST::CLEANUP 1
0.0251 0.0251 14.403 14.403
IDLITSYSTEM::_GETCURRENTTOOL 2
0.0247 0.0124 0.6175 0.3087
IDLGRVIEWGROUP::ADD 3
0.0223 0.0074 0.0223 0.0074
IDLGRVIEW::ADD 3
0.0222 0.0074 0.0222 0.0074
IDL_OBJECT::_OVERLOADBRACKETSRIGHTSIDE 17
0.0212 0.0012 0.0212 0.0012
IDLITVISPOLYGON::CLEANUP 2
0.0207 0.0104 0.9572 0.4786
IDLITMANIPVISSCALE2D::CLEANUP 1
0.0203 0.0203 4.8682 4.8682
IDLITGRWINSCENE::CLEANUP 1
0.0202 0.0202 557.76 557.76
IDLITSYSTEM::GETSERVICE 2
0.0186 0.0093 0.5062 0.2531
IDLITIMESSAGING::_SETTOOL 4
0.0185 0.0046 0.0185 0.0046
IDLITVISDATASPACE::CLEANUP 2
0.0185 0.0092 529.75 264.88
FILEPATH 3
0.0184 0.0061 0.0184 0.0061
INTARR 23
0.0173 0.0008 0.0173 0.0008
IDLITUIADAPTOR::CLEANUP 5
0.0172 0.0034 0.0470 0.0094
IDLITGRVIEW::CLEANUP 1
0.0171 0.0171 539.82 539.82
IDLITGRLAYER::CLEANUP 2
0.0157 0.0079 538.11 269.05
IGETCURRENT 1
0.0138 0.0138 0.6470 0.6470
IDLITGRWORLD::CLEANUP 2
0.0137 0.0069 537.97 268.99
IDLITUI::ONNOTIFY 2
0.0136 0.0068 6.3794 3.1897
IDLITTOOL::GETPROPERTY 1
0.0127 0.0127 0.0200 0.0200
IDLITVISNORMDATASPACE::CLEANUP 2
0.0126 0.0063 536.76 268.38
IDLITCOMMAND::CLEANUP 1
0.0125 0.0125 0.0303 0.0303
IDLITMANIPVISSCALE::CLEANUP 1
0.0123 0.0123 6.6710 6.6710
IDLITOPMAPREGISTERIMAGE::CLEANUP 1
0.0117 0.0117 0.0602 0.0602
WIDGET_INFO 3
0.0117 0.0039 0.0117 0.0039
IDLITUI::_CLEANUPWIDGETS 1
0.0116 0.0116 0.1310 0.1310
IDLITERROR::CLEANUP 1
0.0112 0.0112 0.0134 0.0134
IDLITVISMAPBOXAXES::CLEANUP 1
0.0104 0.0104 0.2458 0.2458
IDLGRCOMPONENT::SETPROPERTY 3
0.0103 0.0034 0.0103 0.0034
DEFINE_MSGBLK 1
0.0101 0.0101 0.0101 0.0101
GRAPHICSMANIP::CLEANUP 1
0.0099 0.0099 1.4066 1.4066
GRAPHICSWIN::CLEANUP 1
0.0098 0.0098 557.77 557.77
IDLITOPINSERTVIS::CLEANUP 1
0.0098 0.0098 0.0374 0.0374
IDLITCOMMANDBUFFER::CLEANUP 1
0.0097 0.0097 0.0502 0.0502
IDLITCOMMANDSET::CLEANUP 1
0.0080 0.0080 0.0398 0.0398
_IDLITLAYOUTMANAGER::CLEANUP 1
0.0073 0.0073 14.342 14.342
IDLITMANIPRANGEBOX::CLEANUP 1
0.0071 0.0071 0.0254 0.0254
IDLITTOOL::_CHECKFORUNSAVED 1
0.0066 0.0066 0.0066 0.0066
INVERT 2
0.0065 0.0033 0.0065 0.0033
IDLITSYSTEM::GETCURRENTTOOL 1
0.0065 0.0065 0.6168 0.6168
IDLITUI::SETPROPERTY 1
0.0063 0.0063 0.0075 0.0075
IDLITVISNORMALIZER::CLEANUP 2
0.0062 0.0031 536.75 268.37
IDLITSELECTCONTAINER::CLEANUP 1
0.0055 0.0055 0.0081 0.0081
IDLCROSSHAIR::CLEANUP 1
0.0052 0.0052 0.7073 0.7073
IDLITCOMMAND::_RESETDATALIST 1
0.0047 0.0047 0.0052 0.0052
IDLITSYSTEM::_SETCURRENTTOOL 1
0.0046 0.0046 0.3832 0.3832
HEAP_REFCOUNT 1
0.0040 0.0040 0.0040 0.0040
IDLGRSCENE::SETPROPERTY 1
0.0040 0.0040 0.0040 0.0040
PATH_SEP 3
0.0039 0.0013 0.0039 0.0013
IDLGRPALETTE::GETPROPERTY 1
0.0031 0.0031 0.0031 0.0031
LON64ARR 1
0.0030 0.0030 0.0030 0.0030
IDLITWINDOW::GETSCENE 1
0.0026 0.0026 0.0026 0.0026
FILE_EXPAND_PATH 1
0.0024 0.0024 0.0024 0.0024
FREE_LUN 1
0.0021 0.0021 0.0021 0.0021
IDLITMESSAGE::CLEANUP 1
0.0013 0.0013 0.0013 0.0013
Re: Ready to quit after 25 years... [message #76719 is a reply to message #76669] Wed, 29 June 2011 00:57 Go to previous messageGo to next message
Klemen is currently offline  Klemen
Messages: 80
Registered: July 2009
Member
I would guess that you have to normalize the longitude vector v_east
by the cosine of the point latitude. Because the direction of your
vectors is correct only if you show them unprjected (lon, lat system).
Cheers, Klemen
Re: Ready to quit after 25 years... [message #76726 is a reply to message #76669] Tue, 28 June 2011 08:52 Go to previous messageGo to next message
chris_torrence@NOSPAM is currently offline  chris_torrence@NOSPAM
Messages: 528
Registered: March 2007
Senior Member
Hi Haje,

Sorry to hear that you are having so many problems. I'll take a look
at the Vector code, to see how we are computing the angle, especially
for non-rectangular maps. Also, Mark Piper and I have been talking
about enhancing the Arrow and Symbol functions so that you can pass in
arrays for the locations.

Finally, I'll see what is going on with Arg_Present. If we convert
Arrow so it accepts array arguments, then the problem with Arg_Present
might go away because you wouldn't need to loop over each arrow. But
perhaps there is some optimization we can do to make Arg_Present
faster regardless.

Hope you're having a better coding day today.

Cheers,
Chris

Dr. Christopher Torrence
Lead Architect for Desktop Products
ITT Visual Information Solutions
Re: Ready to quit after 25 years... [message #76795 is a reply to message #76726] Wed, 29 June 2011 21:23 Go to previous messageGo to next message
David Fanning is currently offline  David Fanning
Messages: 11724
Registered: August 2001
Senior Member
Chris Torrence writes:

> Finally, I'll see what is going on with Arg_Present. If we convert
> Arrow so it accepts array arguments, then the problem with Arg_Present
> might go away because you wouldn't need to loop over each arrow. But
> perhaps there is some optimization we can do to make Arg_Present
> faster regardless.

I had a similar problem with a very slow program a month
or so ago. When I profiled it, I was shocked at how much
time was being spent in ARG_PRESENT. It wouldn't surprise
me to learn that function graphics were twice as fast when
this problem gets fixed!

I have religiously used ARG_PRESENT in the GetProperty
methods of my objects. Now, I only use the function if it
is absolutely necessary.

Cheers,

David


--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.dfanning.com/
Sepore ma de ni thue. ("Perhaps thos speakest truth.")
Re: Ready to quit after 25 years... [message #76821 is a reply to message #76726] Wed, 06 July 2011 16:09 Go to previous messageGo to next message
R.G.Stockwell is currently offline  R.G.Stockwell
Messages: 163
Registered: October 2004
Senior Member
>
> "Chris Torrence" wrote in message
> news:1074c20b-6486-418a-bb61-f690521c59c6@m10g2000yqd.google groups.com...
>
> Hi Haje,
>
> Sorry to hear that you are having so many problems. I'll take a look
> at the Vector code, to see how we are computing the angle, especially
> for non-rectangular maps. Also, Mark Piper and I have been talking
> about enhancing the Arrow and Symbol functions so that you can pass in
> arrays for the locations.
>
> Finally, I'll see what is going on with Arg_Present. If we convert
> Arrow so it accepts array arguments, then the problem with Arg_Present
> might go away because you wouldn't need to loop over each arrow. But
> perhaps there is some optimization we can do to make Arg_Present
> faster regardless.
>
> Hope you're having a better coding day today.
>
> Cheers,
> Chris
>
> Dr. Christopher Torrence
> Lead Architect for Desktop Products
> ITT Visual Information Solutions

Hi Haje,

my two cents: IDL has really turned a corner in the last couple of years,
with improving their product and with the quick feedback that Chris and the
other ITT folks on this newsgroup provide. Along with David Fanning's
posts, I think IDL may be the most user-responsive languages in existence.

cheers,
bob
Re: Ready to quit after 25 years... [message #76891 is a reply to message #76821] Fri, 08 July 2011 09:53 Go to previous messageGo to next message
chris_torrence@NOSPAM is currently offline  chris_torrence@NOSPAM
Messages: 528
Registered: March 2007
Senior Member
Hi Bob,

Thanks for the kind remarks!

Now, regarding the problem with Arg_Present - it turns out to not be a problem with Arg_Present at all. The Profiler introduces a slight overhead when it computes the time spent per iteration and records the information in an internal data structure. For most routines this overhead is negligible compared to the execution time of the routine. However, for very fast routines (like Arg_Present), the overhead is significant. The real problem is that Arg_Present was getting called 15 million times. So what you were really measuring for things like Arg_Present, Obj_Isa, etc. is just the speed of the profiler!

I just made a change to the way the Profiler works. Now, by default it will not include the following routines: ARG_PRESENT, KEYWORD_SET, N_ELEMENTS, OBJ_ISA, OBJ_VALID, PTR_VALID, SIZE. You can still turn on profiling for these routines, but you need to do it explicitly. For example:
PROFILER, /SYSTEM ; turns on profiling for all system routines except the above
PROFILER, 'ARG_PRESENT', /SYSTEM ; also turns it on

Hopefully with this change, your profiling results will no longer be biased towards routines like Arg_Present and N_Elements, and you will be better able to discover the real bottlenecks in your code.

For example, in Haje's case with the Arrow function, the real problem is that he has to call Arrow 1500 times because it doesn't accept array arguments. We're also working on that for IDL 8.2.

Cheers,
Chris
ITTVIS
Re: Ready to quit after 25 years... [message #76893 is a reply to message #76821] Fri, 08 July 2011 09:58 Go to previous messageGo to next message
Haje Korth is currently offline  Haje Korth
Messages: 651
Registered: May 1997
Senior Member
Hi Bob,
no doubt the response from Chris and colleagues to arising issues is
superb and prompt. Communication has significantly improved under the
ITT umbrella and cannot be compared to the KODAK firewall I tried to
climb over unsuccessfully most of the time (Thanks to Ali Bahrami for
opening a back door here and there).

The issues I am having is that all the information on the new graphics
system (NG) I absorb from the forum should be available via the IDL
documentation in absence of third party books. In the past i went to
David's book where the help was insufficient. I was desperately
waiting for him to publish a book on the matter, but I gather from the
forum he does not believe in it presumably due to lack in flexibility.
Mike's new book is great but the 15-page NG chapter is not
comprehensive enough to fill the holes I have in using the system. To
my knowledge no other books exist describing NG. My lack of knowledge
combined with the inability to fill it, results presently in regular
outbursts of anger. :-)

Apparently some of the issues I am having are due to, let's say,
unoptimized codes. While this is not unexpected, the present
development cycle implies that these probably small fixes which would
make my life easier will takes 6-12 months to reach my system. It is
very likely that the codes I am using right now will no longer be in
use by the time a fix becomes available. This leaves me with the
question, whether it is actually worth bothering with the new
technology. No, I do not think I want to know the answer. :-)

Oh, well just my two cents, back to the pile of work in front of me...

Haje

On Jul 6, 7:09 pm, "R.G. Stockwell" <noem...@please.com> wrote:
>> "Chris Torrence"  wrote in message
>> news:1074c20b-6486-418a-bb61-f690521c59c6@m10g2000yqd.google groups.com...
>
>> Hi Haje,
>
>> Sorry to hear that you are having so many problems. I'll take a look
>> at the Vector code, to see how we are computing the angle, especially
>> for non-rectangular maps. Also, Mark Piper and I have been talking
>> about enhancing the Arrow and Symbol functions so that you can pass in
>> arrays for the locations.
>
>> Finally, I'll see what is going on with Arg_Present. If we convert
>> Arrow so it accepts array arguments, then the problem with Arg_Present
>> might go away because you wouldn't need to loop over each arrow. But
>> perhaps there is some optimization we can do to make Arg_Present
>> faster regardless.
>
>> Hope you're having a better coding day today.
>
>> Cheers,
>> Chris
>
>> Dr. Christopher Torrence
>> Lead Architect for Desktop Products
>> ITT Visual Information Solutions
>
> Hi Haje,
>
> my two cents: IDL has really turned a corner in the last couple of years,
> with improving their product and with the quick feedback that Chris and the
> other ITT folks on this newsgroup provide.   Along with David Fanning's
> posts, I think IDL may be the most user-responsive languages in existence.
>
> cheers,
> bob
Re: Ready to quit after 25 years... [message #76957 is a reply to message #76891] Tue, 12 July 2011 06:23 Go to previous message
ben.bighair is currently offline  ben.bighair
Messages: 221
Registered: April 2007
Senior Member
Hi,

On 7/8/11 12:53 PM, Chris Torrence wrote:

> Now, regarding the problem with Arg_Present - it turns out to not be
> a problem with Arg_Present at all. The Profiler introduces a slight
> overhead when it computes the time spent per iteration and records
> the information in an internal data structure. For most routines this
> overhead is negligible compared to the execution time of the routine.
> However, for very fast routines (like Arg_Present), the overhead is
> significant. The real problem is that Arg_Present was getting called
> 15 million times. So what you were really measuring for things like
> Arg_Present, Obj_Isa, etc. is just the speed of the profiler!
>

I wonder if N_PARAMS would be good candidate to add to the list of
masked routines?

> I just made a change to the way the Profiler works. Now, by default
> it will not include the following routines: ARG_PRESENT, KEYWORD_SET,
> N_ELEMENTS, OBJ_ISA, OBJ_VALID, PTR_VALID, SIZE. You can still turn
> on profiling for these routines, but you need to do it explicitly.
> For example: PROFILER, /SYSTEM ; turns on profiling for all system
> routines except the above PROFILER, 'ARG_PRESENT', /SYSTEM ; also
> turns it on
>

I'm still a bit fuzzy on what the SYSTEM keyword does. Are you saying
that setting SYSTEM = 1 will cause PROFILER to include the the masked
routines? or will it exclude the masked routines?

My father might have asked, "To New York or by bus?"

Thanks,
Ben
Re: Ready to quit after 25 years... [message #84620 is a reply to message #76669] Tue, 28 June 2011 14:40 Go to previous message
chris_torrence@NOSPAM is currently offline  chris_torrence@NOSPAM
Messages: 528
Registered: March 2007
Senior Member
Hi Haje,

I think my previous post got swallowed, so I'll try again.

Sorry to hear that you are having so many problems. I've already talked to Mark Piper about adding the ability for the Arrow and Symbol functions to accept array arguments. Regarding the Vectors on non-rectangular maps, I'll take a look at the code to see what it is doing.

As far as the Arg_Present issue, I wonder if this is partly because of having to loop over all of the Arrows. Perhaps if the Arrow function were changed to accept arrays, then this problem would go away. Regardless, I'll take a look at our implementation of Arg_Present to see if there are any optimizations that we can do.

Hope you're having a better day today. Keep giving us feedback on the new graphics - we definitely appreciate it!

Cheers,
Chris

Dr. Christopher Torrence
Lead Architect for Desktop Products
ITT Visual Information Solutions
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: Re: Writing a lot of data to ASCII file without a loop?
Next Topic: postscript output always green

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 13:37:07 PDT 2025

Total time taken to generate the page: 0.67246 seconds