Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Rust version to 1.51 #247

Merged
merged 1 commit into from
May 13, 2021
Merged

Update Rust version to 1.51 #247

merged 1 commit into from
May 13, 2021

Conversation

XAMPPRocky
Copy link
Collaborator

No description provided.

@google-cla google-cla bot added the cla: yes label May 11, 2021
@XAMPPRocky XAMPPRocky mentioned this pull request May 11, 2021
@markmandel
Copy link
Member

Given that we are so performance bound - with changes like this (language versions, dependency upgrades etc) do we want to have a convention of some kind of performance comparison?

Even if it's a local performance test between the current and future Rust versions, just to show there aren't vastly different performance, memory or cpu differences?

@XAMPPRocky
Copy link
Collaborator Author

Given that we are so performance bound - with changes like this (language versions, dependency upgrades etc) do we want to have a convention of some kind of performance comparison?

I don’t have a strong opinion, except that we’d first need to have a reliable benchmark or set of benchmarks that can be easily tested by just running cargo bench or similar. Otherwise we and other contributors won’t end up doing it.

Also FWIW on upgrading Rust itself, severe performance regressions in the compiler don’t usually make it to stable, you can see in this graph compile times nearly always trend downwards

@google-cla
Copy link

google-cla bot commented May 12, 2021

We found a Contributor License Agreement for you (the sender of this pull request), but were unable to find agreements for all the commit author(s) or Co-authors. If you authored these, maybe you used a different email address in the git commits than was used to sign the CLA (login here to double check)? If these were authored by someone else, then they will need to sign a CLA as well, and confirm that they're okay with these being contributed to Google.
In order to pass this check, please resolve this problem and then comment @googlebot I fixed it.. If the bot doesn't comment, it means it doesn't think anything has changed.

ℹ️ Googlers: Go here for more info.

@google-cla google-cla bot added cla: no and removed cla: yes labels May 12, 2021
@markmandel
Copy link
Member

Just noting that we will need to update https://github.com/googleforgames/quilkin/blob/main/rust-toolchain.toml as well.

I expect no issue, but we could run through https://github.com/googleforgames/quilkin/blob/main/examples/iperf3/run.sh just as a quick "is everything reasonably fine" performance wise. (If I don't get to it while sitting in front of the TV this evening).

@markmandel
Copy link
Member

Running iperf3 example on my laptop:

Rust v1.47.0

[SUM][RX-C]   0.00-60.00  sec  1.05 GBytes   150 Mbits/sec  0.000 ms  0/34350 (0%)  sender
[SUM][RX-C]   0.00-60.00  sec  1.05 GBytes   150 Mbits/sec  0.745 ms  0/34350 (0%)  receiver

Rust v1.51.0

[SUM][RX-C]   0.00-60.00  sec  1.05 GBytes   150 Mbits/sec  0.000 ms  0/34350 (0%)  sender
[SUM][RX-C]   0.00-60.00  sec  1.05 GBytes   150 Mbits/sec  0.761 ms  0/34350 (0%)  receiver

Throughput is exactly the same, and jitter is basically the same using the standard iperf3 test settings. So I say LGTM.

@google-cla google-cla bot added cla: yes and removed cla: no labels May 13, 2021
@markmandel markmandel merged commit ae2b24c into main May 13, 2021
@markmandel markmandel deleted the update-rust branch May 13, 2021 23:01
@markmandel
Copy link
Member

Just noting that I built and uploaded the new CI step image.

If this ever gets painful, we should automate this.

@markmandel markmandel added area/build-tools Development tooling. kind/cleanup Refactoring code, fixing up documentation, etc labels May 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/build-tools Development tooling. cla: yes kind/cleanup Refactoring code, fixing up documentation, etc
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants