yates icon indicating copy to clipboard operation
yates copied to clipboard

cache and load schemes from path files?

Open mattall opened this issue 2 years ago • 1 comments

Hello, I'm using Yates in a way that I must re-run initialization for large networks many times, rather than doing it once before I process a series of TMs.

I wrote functions on my fork of yates to read the text of a paths file back into a scheme [1]. Since I haven't had any prior experience with Ocaml, this was a messy processes and I no doubt could have probably made it more efficient if I knew better. After testing it out on

yates data/topologies/Tinet.dot data/demands/Tinet_mergelen_12 data/demands/Tinet_mergelen_12 data/hosts/Tinet.hosts -num-tms 1 -mcfplaced

It seems like loading in the cached paths had no real impact on the initialization time.

I was wondering if you could comment on possible ways to improve the Yates initialization time, and whether or not loading cached paths into a scheme is even a reasonable way to approach the challenge. Thanks! Matt [1] https://github.com/mattall/yates/commit/21005b33add7969d725d7968b0952b506a004bd6

mattall avatar Aug 18 '23 17:08 mattall

Hi Matt,

In principle, it should be possible to serialize any part of YATES's initialization routine and then load it from a file or other cache. The details would depend on how you are using it. And it likely would require some OCaml hacking.

Could you share a bit more about how you are using YATES (a precise command-line invocation would be ideal). Also, about how long does each run take?

On Fri, Aug 18, 2023 at 7:44 PM Matt @.***> wrote:

Hello, I'm using Yates in a way that I must re-run initialization for large networks many times, rather than doing it once before I process a series of TMs.

I wrote functions on my fork of yates to read the text of a paths file back into a scheme [1]. Since I haven't had any prior experience with Ocaml, this was a messy processes and I no doubt could have probably made it more efficient if I knew better. After testing it out on

yates data/topologies/Tinet.dot data/demands/Tinet_mergelen_12 data/demands/Tinet_mergelen_12 data/hosts/Tinet.hosts -num-tms 1 -mcfplaced

It seems like loading in the cached paths had no real impact on the initialization time.

I was wondering if you could comment on possible ways to improve the Yates initialization time, and whether or not loading cached paths into a scheme is even a reasonable way to approach the challenge. Thanks! Matt [1] @.*** https://github.com/mattall/yates/commit/21005b33add7969d725d7968b0952b506a004bd6

— Reply to this email directly, view it on GitHub https://github.com/cornell-netlab/yates/issues/5, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAOCFUVUZEMEOKOMQTRWLC3XV6SZFANCNFSM6AAAAAA3V2OSEA . You are receiving this because you are subscribed to this thread.Message ID: @.***>

jnfoster avatar Aug 22 '23 11:08 jnfoster