|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 5120 (0x1400) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Many_Objects_Benchmark, seg_02bab5
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦this⟧
with Many_Objects_Frames; with Many_Objects_Kbs; with Many_Objects_Rules; with Output_Stream; with Text_Io; use Many_Objects_Frames; use Many_Objects_Kbs; use Output_Stream; procedure Many_Objects_Benchmark is package Duration_Io is new Text_Io.Fixed_Io (Duration); procedure Infere_On_Many_Objects is new Kbs.Rule_Base.Infere (Do_Action => Many_Objects_Rules.Do_Action); procedure Test_With (Iterations, Objects : Positive) is begin States.Add ((Value => 0, Max_Iterations => Iterations, Max_Objects => Objects)); Numbers.Add ((Value => 0)); Infere_On_Many_Objects; Text_Io.Put (Integer'Image (Objects) & " Obj,"); Text_Io.Put (Integer'Image (Iterations) & " Iter: Time =>"); Duration_Io.Put (Kbs.Rule_Base.Elapsed_Time, Fore => 3, Aft => 2); Text_Io.Put (", inferences =>" & Integer'Image (Kbs.Rule_Base.Inference_Count)); Text_Io.Put (", firings per second =>" & Integer'Image (Kbs.Rule_Base.Firings_Per_Second)); Text_Io.New_Line; Kbs.Fact_Base.Make_Empty; end Test_With; begin for I in 1 .. Kbs.Rule_Base.Count loop Kbs.Rule_Base.Put (I, Standard_Output); end loop; Test_With (Iterations => 10, Objects => 10); Test_With (Iterations => 100, Objects => 10); Test_With (Iterations => 100, Objects => 30); Test_With (Iterations => 100, Objects => 100); end Many_Objects_Benchmark;
nblk1=4 nid=4 hdr6=4 [0x00] rec0=1f rec1=00 rec2=01 rec3=02c [0x01] rec0=12 rec1=00 rec2=03 rec3=000 [0x02] rec0=10 rec1=00 rec2=04 rec3=000 [0x03] rec0=0c rec1=00 rec2=04 rec3=000 tail 0x21524040e83f07b23d4a0 0x42a00088462063c03 Free Block Chain: 0x4: 0000 00 02 02 28 80 07 6f 75 6e 74 29 29 3b 07 00 30 ┆ ( ount)); 0┆ 0x2: 0000 00 00 00 08 80 05 41 64 64 20 28 05 20 20 20 20 ┆ Add ( ┆