Announcement

Collapse
No announcement yet.

Intel Unleashes Clear Containers 3.0, Written In Go

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Intel Unleashes Clear Containers 3.0, Written In Go

    Phoronix: Intel Unleashes Clear Containers 3.0, Written In Go

    Intel's Clear Linux team has rolled out their Clear Containers 3.0 technology...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    "Clear Containers 3.0 also adds support for a virtio-blk storage back-end and other improvements for security and performance."
    If it was about security and performance Intel should have used Rust.

    Comment


    • #3
      Originally posted by cl333r View Post
      "Clear Containers 3.0 also adds support for a virtio-blk storage back-end and other improvements for security and performance."
      If it was about security and performance Intel should have used Rust.
      Practically the whole container ecosystem is written in Go and there have been no serious issues so far. If don't go as low level as C/C++, you can be secure without Rust's safeguards
      Performance would have been better in Rust, that's true, but then again, who ever complained about containers' performance?

      Comment


      • #4
        Originally posted by cl333r View Post
        "Clear Containers 3.0 also adds support for a virtio-blk storage back-end and other improvements for security and performance."
        If it was about security and performance Intel should have used Rust.
        Go is no less safe than Rust (the just take different approaches towards assuring that safety).
        The benefit Go has over Rust is ease of migration. Technical debt takes less time to pay off migrating from C or C++ to Go than to Rust.
        Rust's ownership model requires additional steps during the migration.

        Comment


        • #5
          Michael, your titles are sometimes a little bit strange. "Unleashes" means that Intel was keeping this on a leash for a while, implying secrecy or even paranoia. It seems that this was not the case: Intel simply revealed it when it was ready.

          Comment


          • #6
            Originally posted by bug77 View Post
            Practically the whole container ecosystem is written in Go and there have been no serious issues so far.
            Oracle also made a container runtime in Go: Railcar. Which they rewrote in Rust because:

            Originally posted by https://blogs.oracle.com/developers/building-a-container-runtime-in-rust
            Rust (…) can handle namespaces properly.

            Comment


            • #7
              Originally posted by unixfan2001 View Post

              Go is no less safe than Rust (the just take different approaches towards assuring that safety).
              The benefit Go has over Rust is ease of migration. Technical debt takes less time to pay off migrating from C or C++ to Go than to Rust.
              Rust's ownership model requires additional steps during the migration.
              I'm a full time Go developer.

              The Go compiler cannot prove that there are no data races in your code. Of course you can use the race detector, but the program slows down so much that it cannot be used in production. If you race condition happens only with a good amount of load, then you are out of luck.

              I'd seen a lot of nil pointer dereferences as well. Ignored errors, type assertions around interface{} types are all safety hazards. Rust beats Go here. However, I do accept that the container ecosystem is dominated by Go with a good reason.

              Comment


              • #8
                Originally posted by emblemparade View Post
                Michael, your titles are sometimes a little bit strange. "Unleashes" means that Intel was keeping this on a leash for a while, implying secrecy or even paranoia. It seems that this was not the case: Intel simply revealed it when it was ready.
                I'd rather think that this is a weapon they unleashed in order to take over the world...

                Comment


                • #9
                  Originally posted by sad_coala View Post

                  I'm a full time Go developer.

                  The Go compiler cannot prove that there are no data races in your code. Of course you can use the race detector, but the program slows down so much that it cannot be used in production. If you race condition happens only with a good amount of load, then you are out of luck.

                  I'd seen a lot of nil pointer dereferences as well. Ignored errors, type assertions around interface{} types are all safety hazards. Rust beats Go here. However, I do accept that the container ecosystem is dominated by Go with a good reason.
                  Keep in mind that many phoronix readers cannot even develop code. We have all sorts of rastermans happy with void* types all over the place.. the guys have zero knowledge of algebraic types and strong types, proofs, invariants etc.

                  Comment


                  • #10
                    Originally posted by andreano View Post

                    Oracle also made a container runtime in Go: Railcar. Which they rewrote in Rust because:
                    So you're fine with someone starting by telling you "almost all container utilities are in c or go" and then going to explain how Go is not actually up to the task?
                    Be that as it may, pick any two languages and you always find spots where one is weak and the other is strong, the linked article really says nothing useful.

                    Comment

                    Working...
                    X