I did install DDlog originally back in early December last year. So
there are probably remnants of that still present. However, I did
perform a `stack install` using an updated pull of master on Friday. So
I guess the `stack install` didn't get rid of the old installation?
Also, there's no `ddlog --version` or anything similar to see what
version of DDlog is installed. That could be a nice feature to have in
the near future.
On 7/12/19 12:40 PM, Leonid Ryzhyk wrote:
Thanks for trying it out! Sounds like you have a very old version of
ddlog. If you install from source, please make sure that you run `stack
install` and that there is no other version off ddlog in your path other
than the one created by `stack install`.
Leonid
On Fri, Jul 12, 2019, 9:05 AM Mark Michelson <mmich...@redhat.com
<mailto:mmich...@redhat.com>> wrote:
On 7/12/19 3:29 AM, Leonid Ryzhyk wrote:
> Dear OVN developers,
>
> This is a brief update on the state of the DDlog port of ovn-northd.
>
> We completed the initial implementation of ovn-northd in DDlog
few months
> ago. Justin kindly
> helped to integrate it with OVN, so that it can be used as a drop-in
> replacement for the C
> version (and passes all the tests in the OVN test suite). The DDlog
> implementation does
> not have any of the new features/improvements added in April 2019
or later.
>
> ## Repository
>
> The code is in the `ddlog-dev` branch of the `ovn-org/ovn`
repository:
> https://github.com/ovn-org/ovn/tree/ddlog-dev
Hi Leonid,
I ran into an issue when attempting to build ovn-northd. I successfully
installed DDLog, but then I encountered this issue when building OVN:
ddlog -i ovn/northd/ovn_northd.dl -L
/home/putnopvut/differential-datalog/lib
ddlog: Failed to parse input file: "ovn/northd/ovn_northd.dl" (line 94,
column 5):
unexpected "&"
expecting "not", variable name, relation name, "var", expression or "."
The line in question looks like this:
&SwitchPort(.lsp = lsp, .sw = &sw),
Any idea what's gone wrong here?
Thanks,
Mark Michelson
>
> ## Documentation
>
> Building and using ovn-northd-ddlog:
>
https://github.com/ovn-org/ovn/blob/ddlog-dev/ovn/northd/docs/design.md
>
> Debugging ovn-northd-ddlog:
>
https://github.com/ovn-org/ovn/blob/ddlog-dev/ovn/northd/docs/debugging.md
>
> ## Preliminary performance results
>
> Han Zhou kindly tested ovn-northd-ddlog with his OVN scale test
and even
> found a nasty
> performance bug in the process (thanks, Han!). He reports that DDlog
> speeds up the test
> by almost a factor of 10:
>
> - ddlog version: 7:39min
> - C version: 67:47min
>
> This is great, and in fact profiling shows that there is still
plenty of
> space for
> improvement. He also reports a 10+ times increase in memory
footprint:
>
> - ddlog version: 1944696KB
> - C version: 147984KB
>
> Again, we are working on a number of optimizations, which should
reduce
> this overhead; although it will never be as low as C, since DDlog
> fundamentally
> needs to cache more state to enable fast incremental computation.
>
> Han also used DDlog's record&replay feature to capture all northd
> transactions
> performed by the scale test in a format that can be replayed
against the
> standalone DDlog executable without having to reproduce Han's
OpenStack
> setup.
> The replay file is here: http://ryzhyk.net/replay.tgz
>
> Instructions for replaying this script:
>
https://github.com/ovn-org/ovn/blob/ddlog-dev/ovn/northd/docs/debugging.md#record-and-replay-ddlog-execution
> The script will run for a few
> minutes and finally print some profiling information, including the
> breakdown of
> DDlog's CPU and memory usage.
>
> ## Next steps
>
> We seek help from the OVN community in maintaining
ovn-northd-ddlog. The
> first
> step is to start porting new OVN features introduced in the last
few months
> to
> DDlog.
>
> Leonid
Hi Leonid,
I attempted
> _______________________________________________
> dev mailing list
> d...@openvswitch.org <mailto:d...@openvswitch.org>
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev