Thanks Ivan, *no less* sounds best for me.

Prachi, please do final editing of the doc:
https://apacheignite.readme.io/v2.1/docs/durable-memory-tuning

—
Denis

> On Sep 15, 2017, at 12:24 AM, Ivan Rakov <ivan.glu...@gmail.com> wrote:
> 
> Denis,
> 
> Yes, Ignite page size should be *greater or equal* than OS page cache size 
> and SSD page size. I mentioned it in advice list:
> 
>> page size of Ignite shouldn't be less than SSD page size
>> Page size of Ignite shouldn't be less than OS page size
> 
> Sorry for vague wording.
> We should fix this in documentation.
> 
> 
> Best Regards,
> Ivan Rakov
> 
> On 14.09.2017 3:46, Denis Magda wrote:
>> Ivan,
>> 
>> Documented:
>> https://apacheignite.readme.io/v2.1/docs/durable-memory-tuning 
>> <https://apacheignite.readme.io/v2.1/docs/durable-memory-tuning>
>> 
>> However, I’m a bit confused with you 6. point regarding the page size 
>> calculation. Should Ignite page size be always less than the SSD’s page size 
>> and OS page cache size? Or it can be equal? For instance if the OS page 
>> cache size is 4 KB what should be Ignite’s page size? That’s the section 
>> about this: 
>> https://apacheignite.readme.io/v2.1/docs/durable-memory-tuning#section-page-size
>>  
>> <https://apacheignite.readme.io/v2.1/docs/durable-memory-tuning#section-page-size>
>> 
>> —
>> Denis
>> 
>>> On Sep 13, 2017, at 2:29 AM, Ivan Rakov <ivan.glu...@gmail.com> wrote:
>>> 
>>> Folks,
>>> 
>>> We had some experience of benchmarking Ignite with persistent store on SSD. 
>>> I think we can share some helpful advice. None of them require changing 
>>> configuration of Ignite or persistent store.
>>> 
>>> *Tuning advice for users*
>>> 
>>> 1) Be prepared for LFS performance decrease after several hours of 
>>> intensive load. Unfortunately, that's how SSD drives work: 
>>> http://codecapsule.com/2014/02/12/coding-for-ssds-part-2-architecture-of-an-ssd-and-benchmarking/
>>> Consider buying fast production-level SSD drives.
>>> 2) Consider using separate drives for LFS files and WAL. Ignite actively 
>>> performs writes to both LFS and WAL under intensive load, and having two 
>>> devices will double your throughput limit.
>>> 3) Over-provision your SSD. Performance of random writes on 50% filled disk 
>>> is much better than on 90% filled. SSD Over-Provisioning And Its Benefits: 
>>> http://www.seagate.com/ru/ru/tech-insights/ssd-over-provisioning-benefits-master-ti/
>>> 4) Leave free space in RAM to let OS use page cache and optimize writes. 
>>> Total size of all memory policies shouldn't exceed 70% of your RAM.
>>> 5) Make sure that OS doesn't utilize swap. If you use Unix, best option is 
>>> set vm.swappiness to 0.
>>> 6) Try to find out page size of your SSD. Ideally, page size of Ignite 
>>> shouldn't be less than SSD page size. Possible approaches:
>>> Find it in device specification (some manufacturers don't reveal it)
>>> Try running SSD benchmarks
>>> If you are not sure, just set page size to 4K. As various benchmarks use 4K 
>>> pages, manufacturers have to adapt drives for 4K random write workload. 
>>> Whitepaper from Intel showing that 4K pages are enough: 
>>> https://www.intel.com/content/dam/www/public/us/en/documents/white-papers/ssd-server-storage-applications-paper.pdf
>>> Check your OS page cache size. Page size of Ignite shouldn't be less than 
>>> OS page size. How to check OS cache page size in Unix: 
>>> https://unix.stackexchange.com/questions/128213/how-is-page-size-determined-in-virtual-address-space
>>> 
>>> 
>>> Best Regards,
>>> Ivan Rakov
>>> 
>>> On 01.09.2017 21:08, Denis Magda wrote:
>>>> Igniters,
>>>> 
>>>> I see a lot of complains regarding the performance of the subj on the user 
>>>> list. At the same time, I do believe that in most scenarios it’s a lack of 
>>>> knowledge that we keep in secret.
>>>> 
>>>> It's time to document Durable Memory and its Native Persistence tuning 
>>>> parameters. Let's start doing this for Linux based deployments first. Here 
>>>> is what we have for now (which is almost nothing): 
>>>> https://apacheignite.readme.io/docs/durable-memory-tuning 
>>>> <https://apacheignite.readme.io/docs/durable-memory-tuning>
>>>> 
>>>> Ideally, at some point we have to come up with doc like this: 
>>>> https://access.redhat.com/sites/default/files/attachments/deploying-oracle-12c-on-rhel6_1.2_1.pdf
>>>> 
>>>> Please share your expertise in a form of settings that have to be put on 
>>>> the paper. We put them in JIRA and document afterwords:
>>>> https://issues.apache.org/jira/browse/IGNITE-6246 
>>>> <https://issues.apache.org/jira/browse/IGNITE-6246>
>>>> 
>>>> —
>>>> Denis
>> 
> 

Reply via email to