to check kernel Virtual Memory parameters:
cd /proc/sys/vm

bash-3.2# ls -l
total 0
-rw-r--r-- 1 root root 0 Oct 28 16:10 block_dump
-rw-r--r-- 1 root root 0 Oct 28 16:10 dirty_background_bytes
-rw-r--r-- 1 root root 0 Oct 28 16:10 dirty_background_ratio
-rw-r--r-- 1 root root 0 Oct 28 16:10 dirty_bytes
-rw-r--r-- 1 root root 0 Oct 28 16:10 dirty_expire_centisecs
-rw-r--r-- 1 root root 0 Oct 28 16:10 dirty_ratio
-rw-r--r-- 1 root root 0 Oct 28 16:10 dirty_writeback_centisecs
-rw-r--r-- 1 root root 0 Oct 28 16:10 drop_caches
-rw-r--r-- 1 root root 0 Oct 28 16:10 flush_mmap_pages
-rw-r--r-- 1 root root 0 Oct 28 16:10 hugetlb_shm_group
-rw-r--r-- 1 root root 0 Oct 28 16:10 laptop_mode
-rw-r--r-- 1 root root 0 Oct 28 16:10 legacy_va_layout
-rw-r--r-- 1 root root 0 Oct 28 16:10 lowmem_reserve_ratio
-rw-r--r-- 1 root root 0 Oct 28 16:10 max_map_count
-rw-r--r-- 1 root root 0 Oct 28 16:10 max_reclaims_in_progress
-rw-r--r-- 1 root root 0 Oct 28 16:10 max_writeback_pages
-rw-r--r-- 1 root root 0 Oct 28 16:10 min_free_kbytes
-rw-r--r-- 1 root root 0 Oct 28 16:10 min_slab_ratio
-rw-r--r-- 1 root root 0 Oct 28 16:10 min_unmapped_ratio
-rw-r--r-- 1 root root 0 Oct 28 16:10 mmap_min_addr
-rw-r--r-- 1 root root 0 Oct 28 16:10 nr_hugepages
-r--r--r-- 1 root root 0 Oct 28 16:10 nr_pdflush_threads
-rw-r--r-- 1 root root 0 Oct 28 16:10 overcommit_memory
-rw-r--r-- 1 root root 0 Oct 28 16:10 overcommit_ratio
-rw-r--r-- 1 root root 0 Oct 28 16:10 pagecache
-rw-r--r-- 1 root root 0 Oct 28 16:10 page-cluster
-rw-r--r-- 1 root root 0 Oct 28 16:10 panic_on_oom
-rw-r--r-- 1 root root 0 Oct 28 16:10 percpu_pagelist_fraction
-rw-r--r-- 1 root root 0 Oct 28 16:10 swappiness
-rw-r--r-- 1 root root 0 Oct 28 16:10 swap_token_timeout
-rw-r--r-- 1 root root 0 Oct 28 16:10 topdown_allocate_fast
-rw-r--r-- 1 root root 0 Oct 28 16:10 vfs_cache_pressure
-rw-r--r-- 1 root root 0 Oct 28 16:10 vm_devzero_optimized
-rw-r--r-- 1 root root 0 Oct 28 16:10 zone_reclaim_interval
-rw-r--r-- 1 root root 0 Oct 28 16:10 zone_reclaim_mode

I changed values as such:

echo 8 > dirty_background_ratio

there is also the /etc/sysctl.conf for permanent changes.
examples:

##
## SYSTEM MEMORY MANAGEMENT ##
##

# improve Swappiness
vm.swappiness = 0
vm.dirty_ratio = 10
vm.dirty_background_ratio = 5

#no overcommit for memory
vm.overcommit_memory = 2


a great site for explanation is:
http://www.mjmwired.net/kernel/Documentation/sysctl/vm.txt
and 
https://klaver.it/linux/sysctl.conf

/sbin/sysctl  vm.swappiness
vm.swappiness = 30
bash-3.2# /sbin/sysctl  -w vm.swappiness=40
vm.swappiness = 40
bash-3.2# /sbin/sysctl vm.swappiness
vm.swappiness = 40

another is the blockdev parameter
bash-3.2# /sbin/blockdev --getra /dev/sdb
256
to set run:
bash-3.2# /sbin/blockdev --setra 2048 /dev/sdb
bash-3.2# /sbin/blockdev --getra /dev/sdb
2048

Some Oracle tweaks
My configuration :

Not Using AMM with ASM and database

/etc/sysctl.conf :
vm.nr_hugepages= 12288 -- page size 2MB => 24 GB
vm.hugetlb_shm_group=1300 --id dba, be careful if it's a different user 
between ASM and Database
kernel.shmmax=25769803776 -- => 24 GB
kernel.shmall=6291456 -- page size 4KB =>24 GB

/etc/security/limits.conf :
memlock=25165824 -- KB => 24 GB

/etc/profile
ulimit -u 16384 -n 65536 -l 25165824

To check you are using Huge Page

grep Huge /proc/meminfo