DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ B T ┃
Length: 1679 (0x68f) Types: TextFile Names: »B«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11 └─ ⟦129cab021⟧ »DATA« └─⟦this⟧ └─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04 └─ ⟦d65440be7⟧ »DATA« └─⟦this⟧ └─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11 └─ ⟦129cab021⟧ »DATA« └─⟦e24fb53b7⟧ └─⟦this⟧
with Many_Objects_Frames; with Many_Objects_Kbs; with Many_Objects_Rules; with Output_Stream; with Slot; 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 => Slot.Value (0), Max_Iterations => Slot.Value (Iterations), Max_Objects => Slot.Value (Objects))); Numbers.Add ((Value => Slot.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 (", infer. =>" & 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.Working_Memory.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); Test_With (Iterations => 100, Objects => 200); end Many_Objects_Benchmark;