Часовой пояс: UTC + 3 часа




Куратор(ы):   anta777    fedx   



Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 43804 • Страница 68 из 2191<  1 ... 65  66  67  68  69  70  71 ... 2191  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 
Прилепленное (важное) сообщение

Member
Статус: Не в сети
Регистрация: 18.05.2005
Откуда: Moscow
Фото: 9
Принятые в теме сокращения (и заодно необходимые утилиты для отладки и тестирования памяти)
TM5 - TestMem5
ATC=Asrock Timing Configurator 4.0.4 for z370/390
Asrock Timing Configurator 4.0.13
Asrock Timing Configurator 4.0.12 for z690
Asrock Timing Configurator 4.0.10 for z590
Asrock Timing Configurator 4.0.9 for z490
Asrock Timing Configurator 4.0.8
Asrock Timing Configurator 4.0.3 for z170/270/490

Asrock Timing Configurator 4.0.16
https://drive.google.com/file/d/1-PdgLkCf-5cA3b1kqO2CmFyhXtz-tiS3

AMT - Asus MemTweakit Asus MemTweakIt 2.02.44

При настройке памяти в BIOS ставим ОБЯЗАТЕЛЬНО MRC Fast boot=disable (включаем при этом режим тонкой тренировки, если же выставим enable, то включаем режим грубой тренировки).
Оптимально при разгоне памяти использовать в биосе множитель памяти 133, а не авто или 100, что даст возможность создать комфортные условия для контроллера памяти в процессоре и снизить напряжения ио и са !
Недаром в Jedec шаг между спидбинами именно 133, а не 100!
Для плат с Alder Lake напряжения VDD и VDDQ на память могут отличаться не больше, чем на 300 мВ.
Для плат на основе логики z690 и b660:
VDD>VDDQ
VDDQ>=VDD-300mV(0.3V)

Лучше на VDDQ не превышать 1.25V. Вполне возможно 1.30V. MSI дает зазор до 1.40V.
Для таймингов должно выполняться требование:
_dr=_dd

Разгон памяти у современной DDR4 (16 банков,RRDS=4,FAW=16,BL=8) эффективен только при tRC<=64,если каждый новый блок чтения происходит с разных банков памяти.
Для 4-х слотовых плат при разгоне желательно в биосе отключить неиспользуемые слоты.
Для максимальной производительности памяти значение tRFC в тактах для 8-Гбитных чипов должно быть кратно 8,а для 16-Гбитных чипов - 16. Если это правило не соблюдать, то будут вставлены лишние такты при каждом цикле обновления памяти.
Для желающих максимально снизить tRFC.
Делим tRFC на сумму tRCD,tRTP и tRP.
Если результат ближе к 4, то снижать tRFC можно по 4 такта.
Если результат ближе к 2, то снижать tRFC можно по 2 такта.
Это связано с тем, что обновление происходит субмассивами, которые обязательно кратны 2.

Новая информация по tRAS
Чтение с модуля памяти у DDR4 происходит блоками. Минимальный блок сейчас составляет 64 байта, что связано с размером строки кэша у процессора. Этот блок может считываться как с одного банка, так и с разных.
tRAS=tRCD+tRTP (при считывании 8 байт с одного банка)
tRAS=tRCD+tRTP+4 (при считывании 16 байт с одного банка)
tRAS=tRCD+tRTP+8 (считывание 24 байт - маловероятно)
tRAS=tRCD+tRTP+12 (при считывании 32 байт с одного банка). Самый верный выбор для DDR4!
tRAS=tRCD+tRTP+16 (считывание 40 байт - маловероятно)
tRAS=tRCD+tRTP+20 (считывание 48 байт - маловероятно)
tRAS=tRCD+tRTP+24 (считывание 56 байт - маловероятно)
tRAS=tRCD+tRTP+28 (при считывании 64 байт с одного банка)
Для DDR4 оптимальным выбором является 4-й или последний вариант.
Но если выставить tRAS меньше, то ничего трагичного не произойдет, так как джедек придумала предохранитель (tRTP), поэтому можно не заморачиваться и выставлять минимальный tRAS (=tRCD+tRTP).


Напряжения на процессоре при разгоне памяти
SA- безопасный уровень (по данным MSI) 1.35, растет от частоты памяти и зависит от подключенной периферии к PCIE, чем больше скорость видеокарты и NVME-диска, тем выше нужно напряжение.
IO (для Z590 =IO2, а просто IO можно оставлять в авто, для Z690=IVR DDQ)- обычно хорошо работает если на 50 мВ ниже SA, но чем ниже, тем лучше, стараться максимально снижать.
Тоже растет с ростом частоты памяти.
Для ориентира при настройке всегда рекомендую глянуть, что за напряжения SA и IO выставляет материнка в авто.


Для начала тезисно несколько правил «успешного разгона и установки памяти»:
1. Ни в коем случае не используем XMP профили – этот режим протестирован на совместимость, но не даёт оптимальную производительность. Поскольку заводская настройка не блещет идеальным подбором, можно получить до 20-25% производительности дополнительно, вручную настраивая тайминги и напряжения. Также XMP режим чреват завышениями вольтажа самой память и контроллера памяти\SOC.
2. Правильная установка модулей – А2 (для одного модуля), A2B2 (для двух модулей).
3. Самый лучший разгон по частоте достигается при использовании одного модуля, при наличии двух планок максимальная частота лишь немного хуже. У четырёх – либо хуже (на устаревающем LGA2011-3) либо такой же или лучше (LGA2066), которые могут стабильно работать с 4мя модулями на 4000CL16.
4. Если используется два модуля, то худший модуль (требующий бОльшего напряжения для стабильного разгона) должен стоять ближе к процессору в слоте A2.
5. Перед настройкой частоты и таймингов памяти отключить подсветку модулей памяти - т.к. это даёт лишний нагрев.

УНИВЕРСАЛЬНЫЙ ГАЙД ПО НАСТРОЙКЕ от Agiliter
Универсальный гайд.
0. Устраните любые потенциальные проблемы с другим железом. Снимите разгон с видеокарты, снизьте частоту цп на 300 с сохранением напряжения. Не забудьте вернуть RTL в авто если сейчас не авто.
1. Крутим очень короткий мемтест, то есть если минуту живёт сразу снижать тайминг дальше. Ищите не стабильность, а явно сбойное значение тайминга, запишите его - пригодится. Гораздо проще найти явно нерабочее значение и от него плясать чем пытаться ловить нестабильность часами. Это также помогает диагностировать сбойные тайминги на ранее "стабильной памяти".
Не пытайтесь найти предельные значение сразу. Сначала скрутите до +2 от минимально стабильного. Многие тайминги идут параллельно поэтому бессмысленно пытаться скрутить до упора с первого прохода.
CR выставить на 2 если стоит 1. В самом конце можно попробовать скинуть до 1. 3 Ставить только на очень большую частоту или если по другому ну совсем никак.

Начните с RCD, CL. Не обязательно должны быть одинаковыми, обычно CL идёт меньше чем RCD.
RAS сразу пробуйте как RCD+CL+4, до этого значения от него существенная разница, дальше меньше.
CWL<=CL. Допустимые значения 9,10,11,12,14,16,18,20.
RP можете выставить по RCD, если пойдёт меньше - тоже неплохо, не уверен правда насчёт смысла.
RTP без формул. Если не идёт вниз можно попробовать поднять чуть чуть RP. В DDR4 явно связан с WR соотношением 2 к 1 (например WR20\RTP10), физически хранится одно значения и в зависимости от операции интерпретируется.
Скрутите FAW до 16(так и оставьте если работает). С таким FAW скручивайте RRD(оба, L обычно больше чем S), возможно поедут на 4 оба. Если до 4 не удалось спустить поднимите FAW до уровня RRDL*4 и попробуйте ещё, хотя это скорее всего уже почти предел.
Обычно L>=S. L - SG(Same Group). S - DG(Different Group) Напр. RRD_L>=RRD_S.
CKE=5
СCDL>=4
RDRD_DD и прочие подобные можно проигнорировать если у вас нет двух планок на один канал (4 планки). DD-Different Dimm. Тоже самое с DR-Different Rank если у вас одноранговая память.
RDWR_SG(DG) и подобные сочетания скручивайте до минимальных рабочих, потом накиньте сверху +2. Как уже отметил обычно SG>=DG.
WTR не трогайте он сам спустится когда будете скидывать WRRD_SG(DG) и прочие подобные. Если сам меньше не стал тогда руками скидывать.
WR снижать через WRPRE если есть. Если нет или не снижает WR, То скрутите его скажем до 12 или +4 от рабочего, потом дожмёте если не лень будет.
RFC явных формул нет, крутить после всего списка сверху. Не пытайтесь найти его минимальное значение если не хотите чтобы память начинала сыпать ошибками от любого чиха. найдите пограничное со стабильностью значение и накиньте сверху 20 или сразу 40. Может реагировать на RAS+RP, RRD, FAW, причём в обе стороны (то есть может "сломаться" если задрать названные), а может и не реагировать...
REFi больше лучше. Связан с RFC. REFI сколько память "работает" - RFC сколько "отдыхает". Оба тайминга лучше не пытаться найти предельное значение.Заметно реагируют на температуру.
Многие тайминги отзываются и на температуру и на напряжение. Поскольку напряжение может как позволить снизить тайминг, так и увеличить температуру, то середину можно искать очень долго, поэтому лучше бы вовремя остановится.
Тестируйте тщательно с перезагрузками, сном, холодным стартом.
RTL и IOL вам кто-то другой пусть советует как настраивать, от них у меня голова болеть начинает...

Таблицы от anta777
Актуальные (последние) версии:
TableDRAMIntel(simple3nov2020+simple12oct2020+обычная)
http://bit.ly/3rTIBLv
http://bit.ly/3nWJlxB
http://bit.ly/32WnkTU
Conf tm5(slight+uni@LMHz+extreme+absolut)
http://bit.ly/2Oe8R00 - суперлайт
http://bit.ly/2H9jIZH - универсальный
http://bit.ly/2MUvl6n - экстремальный
http://bit.ly/3D9TUnD - абсолют
http://bit.ly/3STH2wx - новый для интела и DDR5
http://bit.ly/3wedj8U - новый для Ryzen3D и DDR5
Тяжелый
http://bit.ly/35eKfeJ

Расчет таймингов (на материнках ASUS)

tRASmin=tCL+tRCD+2
WTRS/L устанавливаются в биосе через WRRDdg/sg согласно формуле:
WRRD_sg=6+CWL+WTR_L
WRRD_dg=6+CWL+WTR_S
WR - через WRPRE (для матплат ASUS):
WRPRE=4+CWL+WR
RTP - через RDPRE (для матплат ASUS)
RDPRE=RTP

МЕГАпост про RTL и настройку
ПРО НАПРЯЖЕНИЕ НА ПАМЯТЬ!
VDDDQ=1.5 V max по Jedec
VrefCA=0.6xVDDDQ=0.9 V (max по Jedec), в даташите контроллера интел тоже разрешено максимальное vrefca=0.6xVdddq.
То есть при обычной настройке биоса, когда VrefCA=0.5xVDDDQ, VDRAM<=1.8 V, чтобы уложиться в нормы по Jedec.
А если при этом в биосе настроить vrefca=0.49xvdddq (разрешено по Jedec), то безопасное Vdram может быть еще выше=1.837 V.
Вывод: для контроллера процессора напряжение на память <=1.8 V неопасно


МЕТОДИКА ПОДБОРА ВЕРНЫХ RTT WR, RTT PARK, RTT NOM
https://forums.overclockers.ru/viewtopic.php?p=17484594#p17484594
На OCN есть методика их подбора с помощью Passmark memtest86, использовать только 8-й тест.


ШАБЛОН ПОСТА
Код:
CPU Name: Intel® Core™ i7-7740K CPU @ 4.30GHz
Motherboard Model: MSI X299 GAMING PRO CARBON AC (MS-7A95)
Total Size: 8192 MB
Type: Single Channel (64 bit) DDR4-SDRAM
Frequency: 2750 MHz - Ratio 1:31
Timings: 21-31-31-63-2 (tCAS-tRC-tRP-tRAS-tCR)
Slot #1 Module: G.Skill 8192 MB (DDR4-2137) - XMP 2.0 - P/N: F4-3200C14-8GVR

[img]Ссылка на скрин[/img]
Для сбора статистики по установленным чипам памяти просьба прикладывать скрины программы Taiphoon Burner и указывать напряжения на DIMM, IO и SA![/color]


Расшифровка коротких наименований таймингов часть 1 и часть 2

Предварительная настройка параметров разгона в BIOS платы (на примере плат ASUS)

Пресет для поиска максимальной частоты DDR4 и расчета таймингов от Agiliter (может пригодиться тем у кого плата автоматом выставляет какую-то дичь при автоматической частоте)
Необходимо дополнительное тестирование и ваши предложения что там добавить или поменять.

Кстати, на нашем форуме есть еще и другая Таблица по расчёту таймингов


Таблица tRFC от integralfx
Below are the typical tRFC in ns for the common ICs:
IC tRFC (ns)
Hynix 8Gb AFR 260 - 280
Hynix 8Gb CJR 260 - 280
Hynix 8Gb DJR 260 - 280
Micron 8Gb Rev. E 280 - 310
Micron 16Gb Rev. B 290 - 310
Samsung 8Gb B-Die 120 - 180
Samsung 8Gb C-Die 300 - 340

Таблица tRFC от Reous v26
#77

Расшифровка чипов, находящихся в модуле памяти у разных производителей
#77

Ревизии печатных плат. A0,A1 или A2 планки, как узнать
#77
#77
#77
#77

Статистика tRCD планок в зависимости от типов чипов
#77
#77
#77
Чем выше вы в вертикальном столбце, тем удачнее планки.
Чем интенсивнее цвет, тем выше статистический процент (данные старые,теперь удачнее чипы выходят)
На 1 таблице все,что выше красной линии - суперотборники.

Советы по верной тренировке
1.Поднять напряжения на VCCSA и VCCIO.
2.Включить в биосе Round Trip Latency.
3.Для гигабайтов - memory enchancement=normal.


Программы для тестирования памяти
GSAT- https://drive.google.com/file/d/1iCj0-jQIXIlo_Zvm5jO949ZH9fClTNF3/edit
для длинных тестов добавил параметр "--pause_delay" чтоб периодически не отключались потоки


Последний раз редактировалось anta777 09.12.2024 13:52, всего редактировалось 165 раз(а).
Внесены дополнения по tRFC и tRAS.



Партнер
 

Member
Статус: Не в сети
Регистрация: 30.08.2015
Откуда: Москва
Фото: 42
korn87 писал(а):
всё зависит от того, как захочет аида. Пока крутил частоты и тайминги, зависимостей л2 и л3 от чего-либо не обнаружил.

тайминги есть такие ?
покрути их
#77

_________________
Ryzen 7 5800x(4.7Ггц)
ASUS PRIME X470-PRO
PVS 3800Мгц(15-14-14-28-1Т)
Red Devil 6600 XT 2800/2150
Cooler Master Silent Pro M2 RSA00-SPM2D3-EU


 

Member
Статус: Не в сети
Регистрация: 11.06.2010
Откуда: Астрахань
Фото: 6
Prof
другие тайминги, еще и другая память (хуникс мфр), ноль разницы
https://forums.overclockers.ru/viewtopic.php?p=16213765#p16213765

_________________
Когда нет желания что-то делать, отложи на потом.


 

Member
Статус: Не в сети
Регистрация: 04.06.2017
Фото: 6
homa177 писал(а):
Чет 3600 на 15-х как то стремно смотрятся.
3600-15-15-28

4266-17-17-32

Ну как-бы у 3600 тайминги сильно выше.
И производительность памяти не Аидой измеряют. Пиковая ПСП-да, только где оа нужна? "ПокажиТкни", как говорится. "латенси" показывало бы погоду на марсе-и то ценнее было бы, а оно вообще хз что показывает.
А для реального сравнения нужно бы 3600 по всем таймингам зажать, и сравнивать в чем-то сравнибельном. Но так ниато не делает.

Добавлено спустя 6 минут 57 секунд:
korn87 писал(а):
Производительность оперативки при изменении таймингов я контролировал с помощью аида64: тесты фотоворкс и латенси

Можно не надо пожалуйста? Фотоворксу на эти таыминги..почти плевать. Как и латенси.

korn87 писал(а):
также встроенного бенчмарка винрара.

А вот это хоть что-то хотя и задачс тоже весьма специфическая.


 

Member
Статус: Не в сети
Регистрация: 11.06.2010
Откуда: Астрахань
Фото: 6
Victor91rus писал(а):
Фотоворксу на эти таыминги..почти плевать.


Ну вот например снизил tFAW с 16 до 12, получил проседание фотоворкса на 300 баллов. Снизил tRAS с 30 до 28, получил прирост латенси на 1нс. Явно ошибочные изменения. Быстро и удобно проверять.

_________________
Когда нет желания что-то делать, отложи на потом.


 

Member
Статус: Не в сети
Регистрация: 04.06.2017
Фото: 6
korn87 300 баллов при общем количестве более 30тыс- это менее 1%.
korn87 писал(а):
tRAS с 30 до 28, получил прирост латенси на 1нс
тоже на сказки похоже. Разве что частота 600Мгц, и такты настолько долгие.
Особенно это смешно если у вас при этом tras < trcd+tcas, ох и умора, плацебо :lol:


 

Member
Статус: Не в сети
Регистрация: 11.06.2010
Откуда: Астрахань
Фото: 6
Victor91rus писал(а):
300 баллов при общем количестве более 30тыс- это менее 1%.

там погрешность +-50 баллов из 36к. Потеря 300 сразу выбивается.
Victor91rus писал(а):
тоже на сказки похоже

все вопросы к аиде

_________________
Когда нет желания что-то делать, отложи на потом.


 

Member
Статус: Не в сети
Регистрация: 04.06.2017
Фото: 6
korn87 писал(а):
Потеря 300 сразу выбивается.

Для меня, например, очевидно, что пропуск каждой 3(4) активации может отнимать гораздо больше, чем 0,83%, а значит этот тест -лишь индикатор очевидного, но никак не измеритель

А если контроллер игнорирует неверныы тайминг, то тогда это была погрешность и снова плацебо


 

Junior
Статус: Не в сети
Регистрация: 23.03.2012
Добрый день

Можно ли как-то на платах Aorus Z390, включая Master, управлять таймингами RTL и IO-L?
Спросил также здесь Gigabyte Z390 Aorus Master #16240184


 

Advanced member
Статус: Не в сети
Регистрация: 29.03.2017
Лучше всего измерять производительность памяти чем-то с низкой погрешностью измерений и реагирующую на тайминги.
Например, этой версией линпак можно добиться высокоточных результатов. Хотя я думаю и он тоже не на всё реагирует. В любом случае латенси в аиде не самый точный и тем более охватывающий все нюансы показатель.

_________________
https://docs.google.com/spreadsheets/d/1QpzbIzmoE3ntu6XvpchHspxqA0o6FPxc63_diTelzXw


 

Member
Статус: Не в сети
Регистрация: 04.06.2017
Фото: 6
IS_live rtl(a)=offset(a)+io(a)+2tcl
rtl(b)=offset(b)+io(b)+2tcl+2


 

Member
Статус: Не в сети
Регистрация: 29.12.2014
Фото: 55
Prof писал(а):
смотри разницу в скринах ,вчера с 19 таймингом сегодня с 20
и повлияло не только на ПСП и латентность но и на L3 запись

Prof писал(а):
тайминги памяти влияют

Вложение:
55.jpg
55.jpg [ 292.41 КБ | Просмотров: 949 ]

Ну посмотрел и увидел, что разницы нету, совпадение 99%.
Вот видишь, сам себя опроверг о том, что тайминги якобы влияют на l2,l3 :lol:
p.s Пару страниц дичь нам какую-то нес :mad2:

_________________
[_i5 13600K 5.5 AVX-1/42/48+Gigabyte z790 Gaming X
[_G.Skill Trident Z5 RGB 32Gb 2x16Gb 7400Mhz CL34
[_Msi RTX 4090 Suprim X 3150/11777Mhz


 

Member
Статус: Не в сети
Регистрация: 05.09.2008
Откуда: Ярославль
Фото: 0
fly1ngh1gh
Я вообще ничего не понял прочитав эти несколько страниц. Ведь известно же, что райзен с кэшем лучше работает, чем интел. :?:


 

Member
Статус: Не в сети
Регистрация: 29.12.2014
Фото: 55
Namod
Речь идет про то, что тайминги/частота не виляет на показатели l2,l3.

_________________
[_i5 13600K 5.5 AVX-1/42/48+Gigabyte z790 Gaming X
[_G.Skill Trident Z5 RGB 32Gb 2x16Gb 7400Mhz CL34
[_Msi RTX 4090 Suprim X 3150/11777Mhz


 

Member
Статус: Не в сети
Регистрация: 30.03.2019
Прошу прощения за невнимательность, но где достать настройку 1usmus для тестмема ради стресс-теста памяти (и куда ее вносить для изменения стока)?


 

Member
Статус: Не в сети
Регистрация: 29.12.2014
Фото: 55
Memory - 4000Mhz 17-18-18-35 1T
Вложение:
4.7Ghz, 4000Mhz 1T, TM5.jpg
4.7Ghz, 4000Mhz 1T, TM5.jpg [ 642.06 КБ | Просмотров: 852 ]

_________________
[_i5 13600K 5.5 AVX-1/42/48+Gigabyte z790 Gaming X
[_G.Skill Trident Z5 RGB 32Gb 2x16Gb 7400Mhz CL34
[_Msi RTX 4090 Suprim X 3150/11777Mhz


 

Member
Статус: Не в сети
Регистрация: 29.03.2019
Можно ли еще лучше при стандартной 1.35? Да знаю, поставь 1.4 или 1.45, но я пока не хочу т.к дальше что не подбирай все с ошибками летит. Если это предел, то что можно попробовать при 1.4?


Вложения:
4000.PNG
4000.PNG [ 520.53 КБ | Просмотров: 834 ]
 

Junior
Статус: Не в сети
Регистрация: 23.03.2012
Victor91rus писал(а):
rtl(a)=offset(a)+io(a)+2tcl
rtl(b)=offset(b)+io(b)+2tcl+2


Формулы понятны
Как их теперь применить? Offset-то нету в биосе)


 

Member
Статус: Не в сети
Регистрация: 04.06.2017
Фото: 6
IS_live писал(а):
Offset-то нету в биосе)

посмотреть какой он в винде и от этого плясать.


 

Member
Статус: Не в сети
Регистрация: 18.01.2019
Маленькая победа! 3666cl16 1,39v на туфте про 8-)
Вложение:
Screenshot_13.png
Screenshot_13.png [ 1.38 МБ | Просмотров: 752 ]

Ковырял потом весь вечер 3733, пока безрезультатно. Самое лучшее чего смог добиться - примерно первые 2-3 минуты теста без ошибок, дальше начинают лететь.
Во время всех тестов на оперативу повесил 120мм вертушку, ошибки из-за перегрева исключены.
3800 кстати заводится, но там со стабильностью совсем всё плохо))
Вложение:
Screenshot_3.png
Screenshot_3.png [ 121.96 КБ | Просмотров: 752 ]

_________________
ASUS TUF B450-PRO GAMING | R5 2600@Stock | 2x8 G.SKILL F4-3600C19D-16GSXWB@3666cl16 | ASUS DUAL RX580 4GB


 

Member
Статус: Не в сети
Регистрация: 16.09.2010
Откуда: Уфа
Насколько важны тайминги tRCD tRP? Не удается их снизить меньше 20 для частоты 3466, стабильно 16-20-20-36 на 1.37v и 17-20-20-36 на 1.32v.
Вложение:
3466cl17-Final.png
3466cl17-Final.png [ 142.22 КБ | Просмотров: 1257 ]

_________________
#1 Intel 14600KF, Asus Z790 Hero, 48GB 7200@34, Palit 4070TiS, PX1200G
#2 AMD 7700, Asus B850 FG, 48GB 6000@28, Palit 4070TiS, PX1200G


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 43804 • Страница 68 из 2191<  1 ... 65  66  67  68  69  70  71 ... 2191  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Majestic-12 [Bot], Urry и гости: 22


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan