qweek commented on a change in pull request #526: URL: https://github.com/apache/maven/pull/526#discussion_r695641759
########## File path: Documentation/CACHE-HOWTO.md ########## @@ -0,0 +1,204 @@ +<!--- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +### Overview + +Cache configuration provides you additional control over incremental maven behavior. Follow it step by step to +understand how it works and figure out your optimal config + +### Minimal config + +Absolutely minimal config which enables incremental maven with local cache + +```xml +<?xml version="1.0" encoding="UTF-8" ?> +<cache xmlns="org:apache:maven:cache:config:v1" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="org:apache:maven:cache:config:v1 cache-config.xsd"> + + <configuration> + <enabled>true</enabled> + <hashAlgorithm>XX</hashAlgorithm> Review comment:  Setup: - run on Oracle JDK 1.8.0.201 on Windows and Linux - use 100 jar files with different size from 3 KB to 90 MB, total size 474 MB - read in single thread, calculate hash for each file and total checksum - separate folder for each algorithm to avoid disk cache testing - 100 rounds to minimize CPU interference from external loads - time in seconds, candle body is 25-75 percentile, shadow is min/max values Results: - xxHash shows stable time (3-4 sec) on both Windows and Linux platforms - xxHash with Memory Mapped buffer (XXMM) gives another small gain on Linux, useful on CI - SHA-256 about 4 times slower with a difference of 10 seconds even on this small test P.S. also tested 5157 files with total size 2.6 GB, difference between xxHash and SHA-256 was about 1.5-2 min -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
