Go to file
Dominik Csapak 83088644da fix #2983: improve tcp performance
by leaving the buffer sizes on default, we get much better tcp performance
for high latency links

throughput is still impacted by latency, but much less so when
leaving the sizes at default.
the disadvantage is slightly higher memory usage of the server
(details below)

my local benchmarks (proxmox-backup-client benchmark):

pbs client:
PVE Host
Epyc 7351P (16core/32thread)
64GB Memory

pbs server:
VM on Host
1 Socket, 4 Cores (Host CPU type)
4GB Memory

average of 3 runs, rounded to MB/s
                    | no delay |     1ms |     5ms |     10ms |    25ms |
without this patch  |  230MB/s |  55MB/s |  13MB/s |    7MB/s |   3MB/s |
with this patch     |  293MB/s | 293MB/s | 249MB/s |  241MB/s | 104MB/s |

memory usage (resident memory) of proxmox-backup-proxy:

                    | peak during benchmarks | after benchmarks |
without this patch  |                  144MB |            100MB |
with this patch     |                  145MB |            130MB |

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-09-10 07:15:12 +02:00
.cargo cargo: switch to use packaged crates by default 2020-01-03 09:40:33 +01:00
debian ui: add translation support 2020-09-08 08:54:33 +02:00
docs Change "data store" to "datastore" throughout docs 2020-09-08 13:12:01 +02:00
etc ship pbstest repo as sources.list.d file for beta 2020-07-08 19:09:31 +02:00
examples introduce Username, Realm and Userid api types 2020-08-10 12:05:01 +02:00
src fix #2983: improve tcp performance 2020-09-10 07:15:12 +02:00
tests introduce Username, Realm and Userid api types 2020-08-10 12:05:01 +02:00
www ui: calendar event: disable matchFieldWidth for picker 2020-09-08 16:48:31 +02:00
zsh-completions Add zsh completion scripts 2020-02-27 06:50:14 +01:00
.gitignore .gitignore: add build directory 2020-07-22 09:19:29 +02:00
Cargo.toml depend on proxmox 0.3.5 2020-09-04 08:11:53 +02:00
Makefile buildsys: upload client packages also to PMG repo 2020-09-08 16:48:31 +02:00
README.rst remove the rust-toolchain file 2020-01-16 10:45:46 +01:00
TODO.rst [chore] bump to using pxar 0.2.0 2020-06-25 09:46:56 +02:00
defines.mk Add zsh completion scripts 2020-02-27 06:50:14 +01:00
rustfmt.toml import rustfmt.toml 2019-08-22 13:44:57 +02:00

README.rst

``rustup`` Toolchain
====================

We normally want to build with the ``rustc`` Debian package. To do that
you can set the following ``rustup`` configuration:

    # rustup toolchain link system /usr
    # rustup default system


Versioning of proxmox helper crates
===================================

To use current git master code of the proxmox* helper crates, add::

   git = "ssh://gitolite3@proxdev.maurer-it.com/rust/proxmox"

or::

   path = "../proxmox/proxmox"

to the proxmox dependency, and update the version to reflect the current,
pre-release version number (e.g., "0.1.1-dev.1" instead of "0.1.0").

Local cargo config
==================

This repository ships with a ``.cargo/config`` that replaces the crates.io
registry with packaged crates located in ``/usr/share/cargo/registry``.

A similar config is also applied building with dh_cargo. Cargo.lock needs to be
deleted when switching between packaged crates and crates.io, since the
checksums are not compatible.

To reference new dependencies (or updated versions) that are not yet packaged,
the dependency needs to point directly to a path or git source (e.g., see
example for proxmox crate above).