āļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐāļ āļēāļĐāļēāļāļĢāļąāđˆāļ‡āđ€āļĻāļŠāļŠāđ€āļ›āļ™

Ad


āđ„āļ­āļ„āļ­āļ™ Fav āļ‚āļ­āļ‡ OnWorks

likwid-perfctr - āļ­āļ­āļ™āđ„āļĨāļ™āđŒāđƒāļ™āļ„āļĨāļēāļ§āļ”āđŒ

āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ likwid-perfctr āđƒāļ™āļœāļđāđ‰āđƒāļŦāđ‰āļšāļĢāļīāļāļēāļĢāđ‚āļŪāļŠāļ•āđŒāļŸāļĢāļĩāļ‚āļ­āļ‡ OnWorks āļœāđˆāļēāļ™ Ubuntu Online, Fedora Online, āđ‚āļ›āļĢāđāļāļĢāļĄāļˆāļģāļĨāļ­āļ‡āļ­āļ­āļ™āđ„āļĨāļ™āđŒāļ‚āļ­āļ‡ Windows āļŦāļĢāļ·āļ­āđ‚āļ›āļĢāđāļāļĢāļĄāļˆāļģāļĨāļ­āļ‡āļ­āļ­āļ™āđ„āļĨāļ™āđŒāļ‚āļ­āļ‡ MAC OS

āļ™āļĩāđˆāļ„āļ·āļ­āļ„āļģāļŠāļąāđˆāļ‡ likwid-perfctr āļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđƒāļ™āļœāļđāđ‰āđƒāļŦāđ‰āļšāļĢāļīāļāļēāļĢāđ‚āļŪāļŠāļ•āļīāđ‰āļ‡āļŸāļĢāļĩāļ‚āļ­āļ‡ OnWorks āđ‚āļ”āļĒāđƒāļŠāđ‰āļŦāļ™āļķāđˆāļ‡āđƒāļ™āđ€āļ§āļīāļĢāđŒāļāļŠāđ€āļ•āļŠāļąāļ™āļ­āļ­āļ™āđ„āļĨāļ™āđŒāļŸāļĢāļĩāļ‚āļ­āļ‡āđ€āļĢāļē āđ€āļŠāđˆāļ™ Ubuntu Online, Fedora Online, āđ‚āļ›āļĢāđāļāļĢāļĄāļˆāļģāļĨāļ­āļ‡āļ­āļ­āļ™āđ„āļĨāļ™āđŒāļ‚āļ­āļ‡ Windows āļŦāļĢāļ·āļ­āđ‚āļ›āļĢāđāļāļĢāļĄāļˆāļģāļĨāļ­āļ‡āļ­āļ­āļ™āđ„āļĨāļ™āđŒāļ‚āļ­āļ‡ MAC OS

āđ‚āļ„āļĢāļ‡āļāļēāļĢ:

āļŠāļ·āđˆāļ­


likwid-perfctr - āļāļģāļŦāļ™āļ”āļ„āđˆāļēāđāļĨāļ°āļ­āđˆāļēāļ™āļ•āļąāļ§āļ™āļąāļšāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ‚āļ­āļ‡āļŪāļēāļĢāđŒāļ”āđāļ§āļĢāđŒāļšāļ™ x86 cpus

āđ€āļĢāļ·āđˆāļ­āļ‡āļĒāđˆāļ­


āļĨāļīāļ‚āļīāļ•-perfctr [-vhHVmaeiMoO] [-āļ„/-āļ„ ] [-g or
] [-t ] [-S ] [-s ] [-o
]

DESCRIPTION


āļĨāļīāļ‚āļīāļ•-perfctr āđ€āļ›āđ‡āļ™āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāđˆāļ™āļšāļĢāļĢāļ—āļąāļ”āļ„āļģāļŠāļąāđˆāļ‡āļ™āđ‰āļģāļŦāļ™āļąāļāđ€āļšāļēāđ€āļžāļ·āđˆāļ­āļāļģāļŦāļ™āļ”āļ„āđˆāļēāđāļĨāļ°āļ­āđˆāļēāļ™āļ­āļ­āļ
āļ‚āđ‰āļ­āļĄāļđāļĨāļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ‚āļ­āļ‡āļŪāļēāļĢāđŒāļ”āđāļ§āļĢāđŒāļšāļ™āđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒ x86 āļ—āļĩāđˆāļĢāļ­āļ‡āļĢāļąāļš āļŠāļēāļĄāļēāļĢāļ–āļ§āļąāļ”āđ„āļ”āđ‰āļ—āļąāđ‰āļ‡āđ€āļ›āđ‡āļ™
wrapper āđ‚āļ”āļĒāđ„āļĄāđˆāļ•āđ‰āļ­āļ‡āđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļ—āļĩāđˆāļ§āļąāļ”āļŦāļĢāļ·āļ­āļ”āđ‰āļ§āļĒāļŸāļąāļ‡āļāđŒāļŠāļąāļ™ marker API āļ āļēāļĒāđƒāļ™
āļĢāļŦāļąāļŠāļ—āļĩāđˆāļˆāļ°āđ€āļ›āļīāļ”āđāļĨāļ°āļ›āļīāļ”āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ āļĄāļĩāļāļĨāļļāđˆāļĄāļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ„āļ§āđ‰āļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļēāļ—āļĩāđˆāļĄāļĩāļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒ
āļŠāļļāļ”āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒāđāļĨāļ°āđ€āļĄāļ•āļĢāļīāļāļ—āļĩāđˆāđ„āļ”āđ‰āļĢāļąāļš āļŠāļēāļĄāļēāļĢāļ–āļ§āļąāļ”āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒāļ•āļēāļĄāļ­āļģāđ€āļ āļ­āđƒāļˆāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄāđ„āļ”āđ‰āļ”āđ‰āļ§āļĒ custom
āļŠāļļāļ”āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒ marker API āļŠāļēāļĄāļēāļĢāļ–āļ§āļąāļ”āļ‚āļ­āļšāđ€āļ‚āļ•āļ—āļĩāđˆāļĄāļĩāļŠāļ·āđˆāļ­āđ„āļ”āđ‰āļŦāļĨāļēāļĒāļŠāđˆāļ§āļ™ āļœāļĨāļĨāļąāļžāļ˜āđŒāļˆāļ°āļ–āļđāļāļŠāļ°āļŠāļĄāļšāļ™
āļŦāļĨāļēāļĒāļŠāļēāļĒ āļĢāļ­āļ‡āļĢāļąāļšāđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒ x86 āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰:

· āļ­āļīāļ™āđ€āļ—āļĨ āđāļāļ™ 2: āļ—āļļāļāļĢāļļāđˆāļ™ āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ: āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-1], āļŸāļīāļ„āļ‹āļĩ[0-2]

· āļ­āļīāļ™āđ€āļ—āļĨ āđ€āļ™āļŪāļēāđ€āļĨāđ‡āļĄ: āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ: āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-3], āļŸāļīāļ„āļ‹āļĩ[0-2], āļĒāļđāļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-7]

· āļ­āļīāļ™āđ€āļ—āļĨ Nehalem EX: āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ: āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-3], āļŸāļīāļ„āļ‹āļĩ[0-2], āđ€āļ­āđ‡āļĄāļšāđ‡āļ­āļāļ‹āđŒ[0-1]āļ„[0-5], āļšāļĩāļšāđ‡āļ­āļāļ‹āđŒ[0-1]āļ‹āļĩ[0-3],
RBOX[0-1]āļ„[0-7], WBOX[0-5], āļĒāļđāļšāđ‡āļ­āļāļ‹āđŒ0, SBOX[0-1]āļ‹āļĩ[0-3], āļāļĨāđˆāļ­āļ‡[0-9]āļ„[0-4]

· āļ­āļīāļ™āđ€āļ—āļĨ āđ€āļ§āļŠāļ•āđŒāđ€āļĄāļĩāļĒāļĢāđŒ:
āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ: āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-3], āļŸāļīāļ„āļ‹āļĩ[0-2], āļĒāļđāļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-7]

· āļ­āļīāļ™āđ€āļ—āļĨ āđ€āļ§āļŠāļ•āđŒāđ€āļĄāļĩāļĒāļĢāđŒ EX: āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ: āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-3], āļŸāļīāļ„āļ‹āļĩ[0-2], āđ€āļ­āđ‡āļĄāļšāđ‡āļ­āļāļ‹āđŒ[0-1]āļ„[0-5], āļšāļĩāļšāđ‡āļ­āļāļ‹āđŒ[0-1]āļ‹āļĩ[0-3],
RBOX[0-1]āļ„[0-7], WBOX[0-5], āļĒāļđāļšāđ‡āļ­āļāļ‹āđŒ0, SBOX[0-1]āļ‹āļĩ[0-3], āļāļĨāđˆāļ­āļ‡[0-9]āļ„[0-4]

· āļ­āļīāļ™āđ€āļ—āļĨ āđāļ‹āļ™āļ”āļĩāđ‰ āļŠāļ°āļžāļēāļ™: āļĢāļ­āļ‡āļĢāļąāļš RAPL āđ€āļ•āđ‡āļĄāļĢāļđāļ›āđāļšāļš āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ: āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-3], āļŸāļīāļ„āļ‹āļĩ[0-2], āļžāļĩāļ”āļąāļšāđ€āļšāļīāļĨāļĒāļđāļ­āļēāļĢāđŒ[0-3]

· āļ­āļīāļ™āđ€āļ—āļĨ āđāļ‹āļ™āļ”āļĩāđ‰ āļŠāļ°āļžāļēāļ™ PS: āļāļēāļĢāļŠāļ™āļąāļšāļŠāļ™āļļāļ™āļšāļēāļ‡āļŠāđˆāļ§āļ™āļŠāļģāļŦāļĢāļąāļš uncore āļāļēāļĢāļŠāļ™āļąāļšāļŠāļ™āļļāļ™ RAPL āđ€āļ•āđ‡āļĄāļĢāļđāļ›āđāļšāļš āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ:
āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-3], āļŸāļīāļ„āļ‹āļĩ[0-2], āļžāļĩāļ”āļąāļšāļšāļĨāļīāļ§āļ­āļēāļĢāđŒ[0-3]. āđ€āļ­āđ‡āļĄāļšāđ‡āļ­āļāļ‹āđŒ[0-3]āļ„[0-3]

· āļ­āļīāļ™āđ€āļ—āļĨ āđ„āļĄāđ‰āđ€āļĨāļ·āđ‰āļ­āļĒ āļŠāļ°āļžāļēāļ™: āļĢāļ­āļ‡āļĢāļąāļš RAPL āđ€āļ•āđ‡āļĄāļĢāļđāļ›āđāļšāļš āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ: āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-3], āļŸāļīāļ„āļ‹āļĩ[0-2], āļžāļĩāļ”āļąāļšāđ€āļšāļīāļĨāļĒāļđāļ­āļēāļĢāđŒ[0-3]

· āļ­āļīāļ™āđ€āļ—āļĨ āđ„āļĄāđ‰āđ€āļĨāļ·āđ‰āļ­āļĒ āļŠāļ°āļžāļēāļ™ PS: āļāļēāļĢāļŠāļ™āļąāļšāļŠāļ™āļļāļ™āļšāļēāļ‡āļŠāđˆāļ§āļ™āļŠāļģāļŦāļĢāļąāļš uncore āļāļēāļĢāļŠāļ™āļąāļšāļŠāļ™āļļāļ™ RAPL āđ€āļ•āđ‡āļĄāļĢāļđāļ›āđāļšāļš āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ:
āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-3], āļŸāļīāļ„āļ‹āļĩ[0-2], āļžāļĩāļ”āļąāļšāļšāļĨāļīāļ§āļ­āļēāļĢāđŒ[0-3], āļāļĨāđˆāļ­āļ‡[0-9]C[0-3], āđ€āļ­āđ‡āļĄāļšāđ‡āļ­āļāļ‹āđŒ[0-3]āļ„[0-3], MBOX[0-3]āđāļāđ‰āđ„āļ‚

· āļ­āļīāļ™āđ€āļ—āļĨ āļŪāļēāļŠāđ€āļ§āļĨāļĨāđŒ: āļĢāļ­āļ‡āļĢāļąāļš RAPL āđ€āļ•āđ‡āļĄāļĢāļđāļ›āđāļšāļš āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ: āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-3], āļŸāļīāļ„āļ‹āļĩ[0-2], āļžāļĩāļ”āļąāļšāđ€āļšāļīāļĨāļĒāļđāļ­āļēāļĢāđŒ[0-3]

· āļ­āļīāļ™āđ€āļ—āļĨ Haswell PS: āđ„āļĄāđˆāļĄāļĩāļāļēāļĢāļŠāļ™āļąāļšāļŠāļ™āļļāļ™ uncore āļĢāļ­āļ‡āļĢāļąāļš RAPL āđ€āļ•āđ‡āļĄāļĢāļđāļ›āđāļšāļš āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ: āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-3],
āļŸāļīāļ„āļ‹āļĩ[0-2], āļžāļĩāļ”āļąāļšāđ€āļšāļīāļĨāļĒāļđāļ­āļēāļĢāđŒ[0-3]

· āļ­āļīāļ™āđ€āļ—āļĨ āļ­āļ°āļ•āļ­āļĄ āļ‹āļīāļĨāđ€āļ§āļ­āļĢāđŒāļĄāļ­āļ™āļ•āđŒ: āļĢāļ­āļ‡āļĢāļąāļš RAPL āđ€āļ•āđ‡āļĄāļĢāļđāļ›āđāļšāļš āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ: āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-1], āļŸāļīāļ„āļ‹āļĩ[0-2], āļžāļĩāļ”āļąāļšāđ€āļšāļīāļĨāļĒāļđāļ­āļēāļĢāđŒ[0-1]

· āļ­āļīāļ™āđ€āļ—āļĨ Pentium M: āļžāļąāļ™āļ˜āļļāđŒ Banias āđāļĨāļ° Dothan āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ: āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-1]

· āļ­āļīāļ™āđ€āļ—āļĨ P6: āļ—āļ”āļŠāļ­āļšāļšāļ™ P3

· āđ€āļ­āđ€āļ­āđ‡āļĄāļ”āļĩ K8: āļ—āļļāļāļĢāļļāđˆāļ™ āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ: āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-3]

· āđ€āļ­āđ€āļ­āđ‡āļĄāļ”āļĩ K10: āļšāļēāļĢāđŒāđ€āļ‹āđ‚āļĨāļ™āļē āđ€āļ‹āļĩāđˆāļĒāļ‡āđ„āļŪāđ‰ āļ­āļīāļŠāļ•āļąāļ™āļšāļđāļĨ āđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒāļ—āļĩāđˆāđƒāļŠāđ‰ MagnyCours āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ:
āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ[0-3]

OPTIONS


-v āļžāļīāļĄāļžāđŒāļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āđ„āļ›āļĒāļąāļ‡āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļĄāļēāļ•āļĢāļāļēāļ™ āļˆāļēāļāļ™āļąāđ‰āļ™āļ­āļ­āļ

-h āļžāļīāļĄāļžāđŒāļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļŠāđˆāļ§āļĒāđ€āļŦāļĨāļ·āļ­āđ„āļ›āļĒāļąāļ‡āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļĄāļēāļ•āļĢāļāļēāļ™ āļˆāļēāļāļ™āļąāđ‰āļ™āļ­āļ­āļ

-H āļžāļīāļĄāļžāđŒāļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļŠāđˆāļ§āļĒāđ€āļŦāļĨāļ·āļ­āļāļĨāļļāđˆāļĄ (āđƒāļŠāđ‰āļĢāđˆāļ§āļĄāļāļąāļš -g āļŠāļ§āļīāļ•āļŠāđŒ)

-V āđ€āļ­āļēāļ•āđŒāļžāļļāļ• verbose āļĢāļ°āļŦāļ§āđˆāļēāļ‡āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ”āļĩāļšāļąāļ

-m āļ—āļģāļ‡āļēāļ™āđƒāļ™āđ‚āļŦāļĄāļ” marker API

-a āļžāļīāļĄāļžāđŒāļāļĨāļļāđˆāļĄāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ—āļĩāđˆāļžāļĢāđ‰āļ­āļĄāđƒāļŠāđ‰āļ‡āļēāļ™āļŠāļģāļŦāļĢāļąāļšāđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒāļ›āļąāļˆāļˆāļļāļšāļąāļ™

-e āļžāļīāļĄāļžāđŒāļ•āļąāļ§āļ™āļąāļšāļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆāđāļĨāļ°āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ‚āļ­āļ‡āđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒāļ›āļąāļˆāļˆāļļāļšāļąāļ™

-o
āđ€āļāđ‡āļš ouput āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āđ„āļ§āđ‰āđƒāļ™āđ„āļŸāļĨāđŒāđāļ—āļ™ stdout āļŠāļģāļŦāļĢāļąāļšāļŠāļ·āđˆāļ­āđ„āļŸāļĨāđŒāļ”āļąāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰
āļĢāļ­āļ‡āļĢāļąāļšāļ•āļąāļ§āļĒāļķāļ”āļ•āļģāđāļŦāļ™āđˆāļ‡: %j āļŠāļģāļŦāļĢāļąāļš PBS_JOBID, %r āļŠāļģāļŦāļĢāļąāļš MPI RANK (āđ€āļ‰āļžāļēāļ° Intel MPI āļ—āļĩāđˆ
āļŠāļąāđˆāļ§āļ‚āļ“āļ°), %h āļŠāļ·āđˆāļ­āđ‚āļŪāļŠāļ•āđŒāđāļĨāļ° %p āļŠāļģāļŦāļĢāļąāļšāļāļĢāļ°āļšāļ§āļ™āļāļēāļĢ pid āļ•āļąāļ§āļĒāļķāļ”āļ•āļģāđāļŦāļ™āđˆāļ‡āļˆāļ°āļ•āđ‰āļ­āļ‡
āļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāļ‚āļĩāļ”āļĨāđˆāļēāļ‡ āđ€āļŠāđˆāļ™ -o test_%h_%p āļ„āļļāļ“āļ•āđ‰āļ­āļ‡āļĢāļ°āļšāļļāļ„āļģāļ•āđˆāļ­āļ—āđ‰āļēāļĒāđ€āļžāļ·āđˆāļ­
āļŠāļ·āđˆāļ­āđ„āļŸāļĨāđŒ. āļŠāļģāļŦāļĢāļąāļš txt āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļˆāļ°āļ–āļđāļāļžāļīāļĄāļžāđŒāļ•āļēāļĄāļ—āļĩāđˆāđ€āļ›āđ‡āļ™āļ­āļĒāļđāđˆāđƒāļ™āđ„āļŸāļĨāđŒ āļŠāđˆāļ§āļ™āļ•āđˆāļ­āļ—āđ‰āļēāļĒāļ­āļ·āđˆāļ™ āđ† āđ€āļĢāļĩāļĒāļ a
āļāļĢāļ­āļ‡āđ€āļ­āļēāļ•āđŒāļžāļļāļ• āļ•āļąāļ§āļāļĢāļ­āļ‡āļ—āļĩāđˆāđƒāļŠāđ‰āđ„āļ”āđ‰āļ„āļ·āļ­ csv (āļ„āđˆāļēāļ—āļĩāđˆāļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāļˆāļļāļĨāļ āļēāļ„) āđāļĨāļ° xml
āđƒāļ™āļ‚āļ“āļ°āļ™āļĩāđ‰

-O āļ­āļĒāđˆāļēāļžāļīāļĄāļžāđŒāļ•āļēāļĢāļēāļ‡āđ€āļžāļ·āđˆāļ­āļœāļĨāļĨāļąāļžāļ˜āđŒ āđƒāļŦāđ‰āđƒāļŠāđ‰ CSV āļ—āļĩāđˆāđāļĒāļāļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒāđ„āļ”āđ‰āļ‡āđˆāļēāļĒāđāļ—āļ™

-i āļžāļīāļĄāļžāđŒāļ‚āđ‰āļ­āļĄāļđāļĨ cpuid āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒāđāļĨāļ° Intel Performance Monitoring
āļ„āļļāļ“āļŠāļĄāļšāļąāļ•āļī āđāļĨāđ‰āļ§āļ­āļ­āļ

-c
āļĢāļ°āļšāļļāļĢāļēāļĒāļāļēāļĢāļ•āļąāļ§āđ€āļĨāļ‚āļ‚āļ­āļ‡āđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒ āļĢāļēāļĒāļāļēāļĢāļ­āļēāļˆāļĄāļĩāļŦāļĨāļēāļĒāļĢāļēāļĒāļāļēāļĢ
āļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒāļˆāļļāļĨāļ āļēāļ„ āđāļĨāļ°āļŠāđˆāļ§āļ‡ āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ€āļŠāđˆāļ™ 0,3,9-11

-C
āļĢāļ°āļšāļļāļĢāļēāļĒāļāļēāļĢāļ•āļąāļ§āđ€āļĨāļ‚āļ‚āļ­āļ‡āđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒ āļĢāļēāļĒāļāļēāļĢāļ­āļēāļˆāļĄāļĩāļŦāļĨāļēāļĒāļĢāļēāļĒāļāļēāļĢ
āļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒāļˆāļļāļĨāļ āļēāļ„ āđāļĨāļ°āļŠāđˆāļ§āļ‡ āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ€āļŠāđˆāļ™ 0,3,9-11 āļ•āļąāļ§āđāļ›āļĢāļ™āļĩāđ‰āļˆāļ°āļ›āļąāļāļŦāļĄāļļāļ”
āđ€āļ˜āļĢāļ”āđ„āļ›āļĒāļąāļ‡āđāļāļ™ āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļāļēāļĢāļ™āļąāļšāļ•āļĢāļĢāļāļ°āđ„āļ”āđ‰āđ€āļŠāđˆāļ™āļāļąāļ™

-g <āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž āļāļĨāļļāđˆāļĄ> or <āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒ āļŠāļļāļ” āļŠāļ•āļĢāļīāļ‡>
āļĢāļ°āļšāļļāļāļĨāļļāđˆāļĄāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ—āļĩāđˆāļˆāļ°āļ§āļąāļ” āļ™āļĩāđˆāļ­āļēāļˆāđ€āļ›āđ‡āļ™āļŦāļ™āļķāđˆāļ‡āđƒāļ™āđāļ—āđ‡āļāļ—āļĩāđˆāļŠāđˆāļ‡āļ­āļ­āļāļ”āđ‰āļ§āļĒ
āļ˜āļ‡ -a āļ™āļ­āļāļˆāļēāļāļ™āļĩāđ‰āļĒāļąāļ‡āļŠāļēāļĄāļēāļĢāļ–āļĢāļ°āļšāļļāļŠāļļāļ”āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒāļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ€āļ­āļ‡āđ‚āļ”āļĒāļĢāļēāļĒāļāļēāļĢāļ—āļĩāđˆāļ„āļąāđˆāļ™āļ”āđ‰āļ§āļĒāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒāļˆāļļāļĨāļ āļēāļ„āļ‚āļ­āļ‡
āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒ āđāļ•āđˆāļĨāļ°āļ‡āļēāļ™āļĄāļĩāļĢāļđāļ›āđāļšāļš eventId:register āđ‚āļ”āļĒāļ—āļĩāđˆ register āđ€āļ›āđ‡āļ™ one
āļ‚āļ­āļ‡āļŠāļ–āļēāļ›āļąāļ•āļĒāļāļĢāļĢāļĄāļĢāļ­āļ‡āļĢāļąāļšāļāļēāļĢāļĨāļ‡āļ—āļ°āđ€āļšāļĩāļĒāļ™āļ•āļąāļ§āļ™āļąāļšāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž

-t <āļ„āļ§āļēāļĄāļ–āļĩāđˆ of āļ§āļąāļ”>
āđ‚āļŦāļĄāļ”āđ„āļ—āļĄāđŒāđ„āļĨāļ™āđŒāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ§āļąāļ”āļ—āļĩāđˆāđāļāđ‰āđ„āļ‚āđ€āļ§āļĨāļē āļ„āļģāļ•āđˆāļ­āļ—āđ‰āļēāļĒ 's' āđāļĨāļ° 'ms' āļ—āļĩāđˆāđ€āļ›āđ‡āļ™āđ„āļ›āđ„āļ”āđ‰ āđ€āļŠāđˆāļ™
100āļĄāļīāļĨāļĨāļīāļ§āļīāļ™āļēāļ—āļĩ āđ€āļ­āļēāļ•āđŒāļžāļļāļ•āļĄāļĩāļĢāļđāļ›āđāļšāļš:

<āļœāļĨāļĨāļąāļžāļ˜āđŒ thread0> <āļœāļĨāļĨāļąāļžāļ˜āđŒ thread1> ...

-S
āđ‚āļŦāļĄāļ”āļŦāļđāļŸāļąāļ‡āļžāļĢāđ‰āļ­āļĄāļĢāļ°āļĒāļ°āđ€āļ§āļĨāļēāđƒāļ™ senconds āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļ§āļąāļ”āđāļ­āļžāļžāļĨāļīāđ€āļ„āļŠāļąāđˆāļ™āđ„āļ”āđ‰
āļˆāļēāļāļ”āđ‰āļēāļ™āļ™āļ­āļ.

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡


āđ€āļžāļĢāļēāļ° āļĨāļīāļ‚āļīāļ•-perfctr āļĄāļēāļ•āļĢāļāļēāļĢāđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒāđāļĨāļ°āđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āđāļ­āļžāļžāļĨāļīāđ€āļ„āļŠāļąāđˆāļ™āđ€āļ”āļĩāļĒāļ§
āđ€āļžāļ·āđˆāļ­āđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāđāļĨāļ°āđ€āļ˜āļĢāļ”āļ–āļđāļāļ•āļĢāļķāļ‡āđ„āļ§āđ‰āļāļąāļšāļ—āļĢāļąāļžāļĒāļēāļāļĢāđ€āļ‰āļžāļēāļ° āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļ›āļąāļāļŦāļĄāļļāļ”
āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļ”āđ‰āļ§āļĒāļ•āļąāļ§āļ„āļļāļ“āđ€āļ­āļ‡āļŦāļĢāļ·āļ­āđƒāļŠāđ‰āļŸāļąāļ‡āļāđŒāļŠāļąāļ™āļžāļīāļ™āđƒāļ™āļ•āļąāļ§

1. āđ€āļ›āđ‡āļ™āđ€āļŠāļ·āđ‰āļ­āļ„āļĨāļļāļĄāļ—āļĩāđˆāļĄāļĩāļāļĨāļļāđˆāļĄāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž:

āļĨāļīāļ‚āļīāļ•-perfctr -C 0-2 -g āļ—āļĨ ./cacheBench -n 2 -l 1048576 -i 100 -t āļāļĢāļ°āđāļŠ

āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļŦāļĨāļąāļāļ–āļđāļāļ•āļĢāļķāļ‡āđ„āļ§āđ‰āļ—āļĩāđˆāđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒ 0, āđ€āļ˜āļĢāļ” 0 āļāļąāļšāđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒ 1 āđāļĨāļ°āđ€āļ˜āļĢāļ” 1 āļ–āļķāļ‡
āđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒ 2

2. āđ€āļ›āđ‡āļ™āđ€āļŠāļ·āđ‰āļ­āļ„āļĨāļļāļĄāļ—āļĩāđˆāļĄāļĩāļŠāļļāļ”āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒāļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ€āļ­āļ‡āļšāļ™ AMD:

āļĨāļīāļ‚āļīāļ•-perfctr -C 0-4 -g INSTRUCTIONS_RETIRED_SSE:PMC0,CPU_CLOCKS_UNHALTED:PMC3 ./myApp

āļāļģāļŦāļ™āļ”āļ§āđˆāļēāđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒ INSTRUCTIONS_RETIRED_SSE āļ§āļąāļ”āļ—āļĩāđˆāđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ PMC0 āđāļĨāļ°
āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒ CPU_CLOCKS_UNHALTED āļ—āļĩāđˆāđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒ āļžāļĩāđ€āļ­āđ‡āļĄāļ‹āļĩ3 āļŠāļēāļĄāļēāļĢāļ–āļ„āļģāļ™āļ§āļ“āļĢāļąāļ™āđ„āļ—āļĄāđŒāļ‚āļ­āļ‡ .āđ„āļ”āđ‰
āļāļĢāļ°āļ—āļđāđ‰āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ‚āļķāđ‰āļ™āļ­āļĒāļđāđˆāļāļąāļš CPU_CLOCKS_UNHALTED āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒ. āļŦāļēāļāļ•āđ‰āļ­āļ‡āļāļēāļĢāļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļ„āļļāļ“āļ•āđ‰āļ­āļ‡āļĢāļ§āļĄ
āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒāļ™āļĩāđ‰āđƒāļ™āļŠāļ•āļĢāļīāļ‡āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒāļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ€āļ­āļ‡āļ‚āļ­āļ‡āļ„āļļāļ“āļ”āļąāļ‡āļ—āļĩāđˆāđāļŠāļ”āļ‡āļ”āđ‰āļēāļ™āļšāļ™

3. āđ€āļ›āđ‡āļ™āļ•āļąāļ§āļŦāđˆāļ­āļŦāļļāđ‰āļĄāļ”āđ‰āļ§āļĒāļŠāļļāļ”āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒāļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ€āļ­āļ‡āļšāļ™ Intel:

āļĨāļīāļ‚āļīāļ•-perfctr -C 0 -g INSTR_RETIRED_ANY:FIXC0,CPU_CLK_UNHALTED_CORE:FIXC1 ./myApp

āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒāļ„āļ‡āļ—āļĩāđˆāļŠāļģāļŦāļĢāļąāļšāđ‚āļ›āļĢāđ€āļ‹āļŠāđ€āļ‹āļ­āļĢāđŒ Intel āļˆāļ°āļ–āļđāļāļ§āļąāļ”āļšāļ™āļ•āļąāļ§āļ™āļąāļšāđ€āļ‰āļžāļēāļ° āđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļ„āļ·āļ­
INSTR_RETIRED_ANY , CPU_CLK_UNHALTED_CORE āđāļĨāļ° CPU_CLK_UNHALTED_REF āļŦāļēāļāļ„āļļāļ“āļāļģāļŦāļ™āļ”āļ„āđˆāļē
āđ€āļ„āļēāļ™āđŒāđ€āļ•āļ­āļĢāđŒāļ„āļ‡āļ—āļĩāđˆāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰ āļĨāļīāļ‚āļīāļ•-perfctr āļˆāļ°āļ„āļģāļ™āļ§āļ“āļĢāļąāļ™āđ„āļ—āļĄāđŒāđāļĨāļ°āđ€āļĄāļ•āļĢāļīāļ CPI āļŠāļģāļŦāļĢāļąāļš .āļ‚āļ­āļ‡āļ„āļļāļ“
āļāļēāļĢāļ—āļģāļ‡āļēāļ™

4. āļāļēāļĢāđƒāļŠāđ‰ marker API āđ€āļžāļ·āđˆāļ­āļ§āļąāļ”āđ€āļ‰āļžāļēāļ°āļšāļēāļ‡āļŠāđˆāļ§āļ™āļ‚āļ­āļ‡āđ‚āļ„āđ‰āļ”āļ‚āļ­āļ‡āļ„āļļāļ“ (āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āđ„āļ”āđ‰āļ—āļąāđ‰āļ‡āļāļąāļš
āļāļĨāļļāđˆāļĄāļŦāļĢāļ·āļ­āļŠāļļāļ”āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒāļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ€āļ­āļ‡):

āļĨāļīāļ‚āļīāļ•-perfctr -m -C 0-4 -g INSTRUCTIONS_RETIRED_SSE:PMC0,CPU_CLOCKS_UNHALTED:PMC3
./cacheBench

āļ„āļļāļ“āļ•āđ‰āļ­āļ‡āđ€āļŠāļ·āđˆāļ­āļĄāđ‚āļĒāļ‡āļĢāļŦāļąāļŠāļ‚āļ­āļ‡āļ„āļļāļ“āļāļąāļš liblikwid.a/.so āđāļĨāļ°āđƒāļŠāđ‰āļāļēāļĢāđ€āļĢāļĩāļĒāļ API āļ‚āļ­āļ‡āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒ NS
āļ‚āđ‰āļ­āļĄāļđāļĨāđ‚āļ„āđ‰āļ”āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰āđāļŠāļ”āļ‡āļāļēāļĢāđ‚āļ—āļĢāļ—āļĩāđˆāļˆāļģāđ€āļ›āđ‡āļ™:

#āļĢāļ§āļĄ

/* āļĄāļĩāđ€āļ˜āļĢāļ”āđ€āļ”āļĩāļĒāļ§āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™āļ—āļĩāđˆāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ init */
āļ–āđ‰āļē (threadId == 0)
{
likwid_markerInit();
}
/* āļŦāļēāļāļ„āļļāļ“āļ•āđ‰āļ­āļ‡āļāļēāļĢāļ§āļąāļ”āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āđ€āļ˜āļĢāļ”
* āļ„āļļāļ“āļ•āđ‰āļ­āļ‡āđ€āļĢāļĩāļĒāļ likwid_markerThreadInit() for
* āļāļēāļĢāļˆāļąāļ”āđ€āļ•āļĢāļĩāļĒāļĄ āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļāļąāļš OpenMP */
#pragma omp āļ‚āļ™āļēāļ™
{
likwid_markerThreadInit();
}
āļ­āļļāļ›āļŠāļĢāļĢāļ„;
likwid_markerStartRegion("āđ€āļāļ“āļ‘āđŒāļĄāļēāļ•āļĢāļāļēāļ™");
/* āļĢāļŦāļąāļŠāļ—āļĩāđˆāļˆāļ°āļ§āļąāļ”āļ­āļĒāļđāđˆāļ—āļĩāđˆāļ™āļĩāđˆāđāļĨāđ‰āļ§*/

likwid_markerStopRegion("āđ€āļāļ“āļ‘āđŒāļĄāļēāļ•āļĢāļāļēāļ™");
āļ­āļļāļ›āļŠāļĢāļĢāļ„;
/* āļ­āļĩāļāļ„āļĢāļąāđ‰āļ‡ āļĄāļĩāđ€āļžāļĩāļĒāļ‡āļŦāļ™āļķāđˆāļ‡āđ€āļ˜āļĢāļ”āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™āļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āļ›āļīāļ”āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļŦāļĄāļēāļĒāđ„āļ”āđ‰ */
āļ–āđ‰āļē (threadId == 0)
{
likwid_markerāļ›āļīāļ”();
}

5. āļāļēāļĢāđƒāļŠāđ‰ likwid āđƒāļ™āđ‚āļŦāļĄāļ”āđ„āļ—āļĄāđŒāđ„āļĨāļ™āđŒ:

āļĨāļīāļ‚āļīāļ•-perfctr -c 0-3 -g āļŸāļĨāļ­āļ›āļŠāđŒ_DP -t 300ms ./myApp > āļ­āļ­āļ.txt

āļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļˆāļ°āļ­āđˆāļēāļ™āļ•āļąāļ§āļ™āļąāļšāļ—āļļāļ āđ† 300ms āļšāļ™āļŸāļīāļŠāļīāļ„āļąāļĨāļ„āļ­āļĢāđŒ 0-3 āđāļĨāļ°āđ€āļ‚āļĩāļĒāļ™āļœāļĨāļĨāļąāļžāļ˜āđŒāđ„āļ›āļ—āļĩāđˆ
out.txt āļŠāļģāļŦāļĢāļąāļšāđ‚āļŦāļĄāļ”āđ„āļ—āļĄāđŒāđ„āļĨāļ™āđŒāļˆāļ°āļĄāļĩāđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļŠāđˆāļ§āļ™āļŦāļ™āđ‰āļē likwid-scope āļ‹āļķāđˆāļ‡āđ€āļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™
āļāļēāļĢāļ§āļēāļ‡āđāļœāļ™āļŠāļ”āļ‚āļ­āļ‡āđ€āļŦāļ•āļļāļāļēāļĢāļ“āđŒāļ—āļĩāđˆāđ€āļĨāļ·āļ­āļ āļŠāļģāļŦāļĢāļąāļšāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ‚āļ„āđ‰āļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ āļ”āļđāļ—āļĩāđˆ likwid WIKI
āļŦāļ™āđ‰āļē. āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļ„āļ·āļ­ āđ„āļĄāđˆ āļ•āļĢāļķāļ‡āđ„āļ§āđ‰āļ—āļĩāđˆāļ‹āļĩāļžāļĩāļĒāļđ 0-3

6. āļāļēāļĢāđƒāļŠāđ‰ likwid āđƒāļ™āđ‚āļŦāļĄāļ”āļŦāļđāļŸāļąāļ‡:

āļĨāļīāļ‚āļīāļ•-perfctr -c 0-3 -g āļŸāļĨāļ­āļ›āļŠāđŒ_DP -S 2s

āļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļˆāļ°āđ€āļĢāļīāđˆāļĄāļ•āļąāļ§āļ™āļąāļšāđāļĨāļ°āļ­āđˆāļēāļ™āļ­āļ­āļāļŦāļĨāļąāļ‡āļˆāļēāļ 2 āļ§āļīāļ™āļēāļ—āļĩāļšāļ™āļŸāļīāļŠāļīāļ„āļąāļĨāļ„āļ­āļĢāđŒ 0-3 āđāļĨāļ°āđ€āļ‚āļĩāļĒāļ™
āļœāļĨāļĨāļąāļžāļ˜āđŒāđ„āļ›āļĒāļąāļ‡ stdout āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļ„āļ·āļ­ āđ„āļĄāđˆ āļ•āļĢāļķāļ‡āđ„āļ§āđ‰āļ—āļĩāđˆāļ‹āļĩāļžāļĩāļĒāļđ 0-3

āđƒāļŠāđ‰ likwid-perfctr āļ­āļ­āļ™āđ„āļĨāļ™āđŒāđ‚āļ”āļĒāđƒāļŠāđ‰āļšāļĢāļīāļāļēāļĢ onworks.net


āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāđāļĨāļ°āđ€āļ§āļīāļĢāđŒāļāļŠāđ€āļ•āļŠāļąāļ™āļŸāļĢāļĩ

āļ”āļēāļ§āļ™āđŒāđ‚āļŦāļĨāļ”āđāļ­āļž Windows & Linux

āļ„āļģāļŠāļąāđˆāļ‡ Linux

Ad