hi,
have you considered using one 2197-element table (array) for the counters instead of 2197 abstraction copies? My attached version is a simplified (lacking total input/prob output) example of how to set and increment those counters and output currently incremented value. Building on that there will only be _one_ instance of the abstraction (although you could use seperate instances for different parts of the piece or for making some comparisons).
If using the table version is not possible, then I would suggest deleting all the comments from abstraction definition (yes, there are 2197 copies of those kept in memory).
Krzysztof
Greg Rippin wrote: ...
I've attached a copy of the abstraction in question. I'm only (only!?) running 256 Mb, and I'm starting to think that this may be the problem. Incidentally, the
...
#N canvas 61 29 667 425 12; #X obj 449 340 table counters; #X obj 224 341 tabwrite counters; #X obj 47 142 tabread counters; #X floatatom 47 182 4 0 0; #X obj 47 225 + 1; #X obj 47 47 inlet; #X obj 224 96 inlet; #X obj 87 300 pack 0 0; #X obj 47 105 t 0 0; #X obj 47 344 outlet; #X obj 47 263 t 0 0; #X msg 260 170 999 3; #X text 320 169 (to put 999 into 3rd element); #X text 283 96 set; #X text 30 19 increment; #X msg 126 47 3; #X text 172 47 (to increment 3rd element value); #X msg 449 289 resize 2197; #X obj 449 244 loadbang; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 4 0 10 0; #X connect 5 0 8 0; #X connect 6 0 1 0; #X connect 7 0 1 0; #X connect 8 0 2 0; #X connect 8 1 7 1; #X connect 10 0 9 0; #X connect 10 1 7 0; #X connect 11 0 1 0; #X connect 15 0 8 0; #X connect 17 0 0 0; #X connect 18 0 17 0;