はじめに
Ruby 2.7.2 での動作が可能になったので、手元の M1 の MacBook Air でも開発ができるようになりました。せっかくなので、環境の違いをまとめておきたいと思います。
開発環境のまとめ
せっかくなので、これまでの VMware 内の Ubuntu だけでなく、MacBook Pro のネイティブ環境とも比較してみます。Ubuntu だけ platex 環境が入っていないので、一部のテストがスキップされています。
- | 環境1 | 環境2 | 環境3 |
---|---|---|---|
マシン | VMware | MacBook Pro (2019) | MacBook Air (2020) |
OS | Ubuntu 18.04 LTS | macOS Catalina 10.15.7 | macOS Big Sur 11.1 |
CPU | Core i7 (仮想) | 12 Core Core i7 | 8 Core Apple Silicon |
テスト時間
やはり M1 MacBook 速いですね。データベースのテストは並列化できないので、シングルスレッドの処理が強い M1 の方が強い感じです。
(12/29追記) Segmentation fault の原因が hpricot だとわかったので、せっかくなので、Ruby のバージョンも変えて測り直してみました。バージョンはhttps://www.hmallett.co.uk/2018/08/ruby-and-ruby-on-rails-version-compatibility/で示されている一番高いバージョンにしています。
環境 | OS | Rails version | Ruby Version | テスト時間 |
---|---|---|---|---|
環境1 | Ubuntu | 3.0.20 | 1.9.3-p551 | 24 minutes 19 seconds |
環境1 | Ubuntu | 3.2.22.5 | 2.2 | 11 minutes 14 seconds |
環境1 | Ubuntu | 4.0.13 | 2.2 | 11 minutes 15 seconds |
環境1 | Ubuntu | 4.1.16 | 2.2 | 10 minutes 59 second |
環境1 | Ubuntu | 4.1.16 | 2.3.0 | 11 minutes 37 seconds |
環境1 | Ubuntu | 4.2.11.3 | 2.2.2 | 11 minutes 48 seconds |
環境1 | Ubuntu | 4.2.11.3 | 2.4.5 | 11 minutes 13 seconds |
環境1 | Ubuntu | 5.0.7.2 | 2.2 | 12 minutes 5 seconds |
環境1 | Ubuntu | 5.0.7.2 | 2.4.5 | 12 minutes 6 seconds |
環境1 | Ubuntu | 5.1.7 | 2.2.2 | 12 minutes 17 seconds |
環境1 | Ubuntu | 5.1.7 | 2.5.1 | 11 minutes 51 seconds |
環境1 | Ubuntu | 5.2.4.4 | 2.2.2 | 10 minutes 45 seconds |
環境1 | Ubuntu | 5.2.4.4 | 2.5.1 | 11 minutes 4 seconds |
環境1 | Ubuntu | 6.0.3.4 | 2.7.2 | 6 minutes 50 seconds |
環境2 | macOS Catalina | 6.0.3.4 | 2.7.2 | 5 minutes 16 seconds |
環境3 | macOS Big Sur | 6.0.3.4 | 2.7.2 | 4 minutes 12.6 seconds |
おわりに
ここからは M1 MacBook で 6.1 へのアップデートをした後で、views 関係の修正をしていきます。