Giter Site home page Giter Site logo

Comments (8)

jimpurbrick avatar jimpurbrick commented on April 24, 2024

Thanks for this. I've seen Jython being a significant win for big projects, but I've just timed buck build buck again before and after Jython and seen a slowdown, so I'll see if I can reduce the overhead.

from buck.

bolinfest avatar bolinfest commented on April 24, 2024

@spearce Is this on Mac or Linux? And with an encrypted hard drive or not encrypted?

from buck.

spearce avatar spearce commented on April 24, 2024

Linux version 3.2.5, looks like its an unencrypted ext4 filesystem on local disk.

from buck.

jimpurbrick avatar jimpurbrick commented on April 24, 2024

Using buckd should significantly reduce latency of all buck commands and dramatically reduce the duration of no-op incremental builds of complex projects as build files are cached between builds.

from buck.

spearce avatar spearce commented on April 24, 2024

buckd helps, but not as much as I would like to see. :-)

MacOS 10.8.3 (encrypted disk, java 1.7.0_21)
no-op without buckd: 8s
no-op with buckd: 3s

It seems like buckd has roughly gained back the latency loss caused by switching to Jython. But this is at the expense of a lot more complexity. Thus far the only thing we have really gained is removing a dependency on the local system Python, but that falls flat if your project uses a genrule() that runs a python_application().

from buck.

spearce avatar spearce commented on April 24, 2024

buckd's security model also isn't viable in all environments; you really have to trust every process on your machine in order to run buckd. Given that nailgun uses a native C binary as the client I'm surprised they don't have a version that uses UNIX domain sockets.

from buck.

shs96c avatar shs96c commented on April 24, 2024

There have been some discussions at facebook about sniffing the local system to see if there's a python version that meets the requirements for buck (so Python 2.5 with the imports required for buck.py) and using that in preference to jython if asked.

Right now, it's gone no further than a discussion, as for a large tree our measurements suggest using jython is an overall speed win.

from buck.

bolinfest avatar bolinfest commented on April 24, 2024

Fixed! 1023858

from buck.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.