OLPC - no problem, it's standard linux. iOS - depends on the boost libraries used, but probably gonna make it a no go for a while. Android - no chance. Not really good for C++ apps @ the mo anyway.
i hear what you & jon clark are saying about Boost. I have similar concerns about using up-to-date automake. However, don't like a situation where we have to write and test things twice - with and without boost versions, single & multi-threaded etc. baz has a point about retaining single-thread in though. For 50 sentences with hiero model (1000 pop-limit), time taken was 218sec (multi-threaded, 1 thread) v. 192sec (single-threaded), ie. multi-threading overhead makes decoding 10% slower On 22/09/2011 20:44, Lane Schwartz wrote: > I typically compile with Boost. That said, I do have a couple of > (relatively minor) concerns. > > Would requiring Boost complicate/prevent the compiling and use of > Moses on smaller mobile platforms, such as iOS, Android, and OLPC? > When I was working with Hieu on the iPhone port, I don't remember > having to compile Boost. It probably is possible, but I don't know how > it would affect compiling on iOS, if at all. > > Compiling against Boost can sometimes be a pain, specifically in the > case where you're using an older Linux distro that doesn't ship with a > modern enough version of Boost. Unfortunately a bunch of the machines > in my lab are still running CentOS 5.x, which has an ancient version > of Boost. I have a newer version of Boost compiled on the machines, > but I've definitely had problems convincing autotools to find and use > that version when there's also a version installed in /usr. So to > avoid that pain, when I'm on a machine with an older Linux distro, I > typically just compile with Boost turned off. > > So as much as I hate to be the kill-joy, if Boost is made mandatory, > please require the oldest version that provides the needed > functionality. > > Cheers, > Lane > > > On Thu, Sep 22, 2011 at 8:24 AM, Christian Hardmeier<[email protected]> wrote: >> Hi, >> >> I very much agree with Barry when it comes to Boost. In my opinion it should >> be required, but there should be some control over the packages used. While >> I can't see a good reason not to use smart pointers, you probably don't want >> people to start using lambda expressions all over the place, especially when >> some of the developers aren't familiar with this kind of code. >> >> Cheers, >> Christian >> >> On Sep 22, 2011, at 2:11 PM, Barry Haddow wrote: >> >>> Hi >>> >>> Here's my thoughts: >>> >>> - there should be single and multi-thread compile paths so single-thread >>> users don't pay the lock penalty. Maybe a -threads 0 works, but then you >>> have to check a config each time you want to lock >>> - boost should be required, but care about which packages we use >>> - cruise control will help catch these compile path errors, once it's up >>> and running >>> >>> Cheers Barry >>> >>> Sent from my ZX81 >>> >>> ----- Reply message ----- >>> From: "Miles Osborne"<[email protected]> >>> Date: Thu, Sep 22, 2011 11:33 >>> Subject: [Moses-support] Multi-threading / Boost lib / compile error for >>> threaded Moses >>> To: "Kenneth Heafield"<[email protected]> >>> Cc:<[email protected]> >>> >>> >>> this is the last thing i will post here on this subject: >>> >>> debugging with a single thread running invokes the threading code. >>> ***if you suspect that this is somehow broken, then you need to debug >>> without it***. it is that simple. >>> >>> running gdb in single thread mode still uses threading. >>> >>> Miles >>> >>> On 22 September 2011 11:28, Kenneth Heafield<[email protected]> wrote: >>>> But I don't see a use case for it. I can run gdb just fine on a >>>> multithreaded program that happens to be running one thread. And the >>>> stderr output will be in order. >>>> >>>> On 09/22/11 11:21, Miles Osborne wrote: >>>>> should someone want to debug with no threading, then there would need >>>>> to be a mess of ifdefs removing all support for threading. i agree, >>>>> this will be a pain to deal with, but this is what debugging with no >>>>> threads means. >>>> >>> >>> >>> -- >>> The University of Edinburgh is a charitable body, registered in >>> Scotland, with registration number SC005336. >>> >>> _______________________________________________ >>> Moses-support mailing list >>> [email protected] >>> http://mailman.mit.edu/mailman/listinfo/moses-support >>> >>> >>> >>> _______________________________________________ >>> Moses-support mailing list >>> [email protected] >>> http://mailman.mit.edu/mailman/listinfo/moses-support >> >> _______________________________________________ >> Moses-support mailing list >> [email protected] >> http://mailman.mit.edu/mailman/listinfo/moses-support >> > > _______________________________________________ Moses-support mailing list [email protected] http://mailman.mit.edu/mailman/listinfo/moses-support
