From 15f6d81c411d3cea641169a898c431f56a21df91 Mon Sep 17 00:00:00 2001 From: Koert Kuipers Date: Sat, 21 Jun 2014 13:11:49 -0400 Subject: [PATCH] change default for spark.kryoserializer.buffer.max.mb to 64mb and add some documentation --- .../apache/spark/serializer/KryoSerializer.scala | 2 +- docs/configuration.md | 15 +++++++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/core/src/main/scala/org/apache/spark/serializer/KryoSerializer.scala b/core/src/main/scala/org/apache/spark/serializer/KryoSerializer.scala index cf0c495c6c2c0..e62f3415b4a5e 100644 --- a/core/src/main/scala/org/apache/spark/serializer/KryoSerializer.scala +++ b/core/src/main/scala/org/apache/spark/serializer/KryoSerializer.scala @@ -46,7 +46,7 @@ class KryoSerializer(conf: SparkConf) with Serializable { private val bufferSize = conf.getInt("spark.kryoserializer.buffer.mb", 2) * 1024 * 1024 - private val maxBufferSize = conf.getInt("spark.kryoserializer.buffer.max.mb", 16) * 1024 * 1024 + private val maxBufferSize = conf.getInt("spark.kryoserializer.buffer.max.mb", 64) * 1024 * 1024 private val referenceTracking = conf.getBoolean("spark.kryo.referenceTracking", true) private val registrator = conf.getOption("spark.kryo.registrator") diff --git a/docs/configuration.md b/docs/configuration.md index b84104cc7e653..c7949c0a115b9 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -385,10 +385,17 @@ Apart from these, the following properties are also available, and may be useful spark.kryoserializer.buffer.mb 2 - Maximum object size to allow within Kryo (the library needs to create a buffer at least as - large as the largest single object you'll serialize). Increase this if you get a "buffer limit - exceeded" exception inside Kryo. Note that there will be one buffer per core on each - worker. + Object size to allow within Kryo using default (pre-allocated) buffers (the library needs to create + a buffer at least as large as the largest single object you'll serialize). Note that there will be + one buffer per core on each worker. + + + + spark.kryoserializer.buffer.max.mb + 64 + + Maximum object size to allow within Kryo by resizing buffers as needed (which has some overhead). + Increase this if you get a "buffer limit exceeded" exception inside Kryo.