KCUTILTEST(1)

✨ KCUTILTEST ✨ (that's section 1 of the manual, bestie, from the Kyoto Cabinet collection πŸ’–)

πŸŽ€ NAME πŸŽ€

kcutiltest β€” the command line interface to test the utility functions, aka the little stress-test goblin that checks if your utility functions are actually slaying or just pretending πŸ¦‹


🌸 DESCRIPTION 🌸

Okay so listen. The command kcutiltest is a utility for facility test and performance test of the utility functions. It's giving "gym membership for your code" β€” it runs your stuff over and over until it either thrives or cries 😭

This command is used in the following format. rnum specifies the number of iterations. path specifies the path of a file. Yes, rnum is literally how many times we're gonna do the thing. No cap.

kcutiltest mutex [-th num] [-iv num] rnum
kcutiltest cond [-th num] [-iv num] rnum
kcutiltest para [-th num] [-iv num] rnum
kcutiltest file [-th num] [-rnd] [-msiz num] path rnum
kcutiltest lhmap [-rnd] [-bnum num] rnum
kcutiltest thmap [-rnd] [-bnum num] rnum
kcutiltest talist [-rnd] rnum
kcutiltest misc rnum

And here's what each one is actually about, no gatekeeping 🫢:

  • kcutiltest mutex [-th num] [-iv num] rnum β€” performs test of lock primitives. Lock girlies, assemble πŸ”’
  • kcutiltest cond [-th num] [-iv num] rnum β€” performs test of condition variable primitives. Waiting room behavior, but make it ✨intentional✨
  • kcutiltest para [-th num] [-iv num] rnum β€” performs test of parallel processing. Everything everywhere all at once πŸ’…
  • kcutiltest file [-th num] [-rnd] [-msiz num] path rnum β€” performs test of the file system abstraction. It needs a path, it's not optional, don't forget her πŸ“
  • kcutiltest lhmap [-rnd] [-bnum num] rnum β€” performs test of doubly-linked hash map. Two links? Iconic.
  • kcutiltest thmap [-rnd] [-bnum num] rnum β€” performs test of memory-saving hash map. Frugal queen πŸ‘‘
  • kcutiltest talist [-rnd] rnum β€” performs test of memory-saving array list. Also on a budget, also thriving 🌈
  • kcutiltest misc rnum β€” performs test of miscellaneous mechanisms. The "random stuff drawer" of tests, and we respect it πŸ™ˆ

πŸ’œ OPTIONS πŸ’œ

Options feature the following. (Yes, all of them. We are not skipping a single one, that would be so rude.)

  • -th num β€” specifies the number of worker threads. More threads = more chaos = more fun, fr fr.
  • -iv num β€” specifies the interval between iterations. A lil breather between reps 🧚
  • -rnd β€” performs random test. Chaos mode: activated πŸ”₯
  • -msiz num β€” specifies the size of the memory-mapped region. Big region energy.
  • -bnum num β€” specifies the number of buckets of the hash table. Buckets. Like a beach. But for hashes πŸ–οΈ

⭐ EXIT STATUS (kinda, it's in the description but it matters) ⭐

This command returns 0 on success, another on failure. So like, 0 is the slay, anything else is the πŸ’€. Check your exit codes, bestie, they're telling you a story.


πŸ‘‘ SEE ALSO πŸ‘‘

  • kcutilmgr(1) β€” go read it, it's right there, it's the sister doc 🫢

Okay that's the whole page!! Written up on 2012-05-24, from the Kyoto Cabinet era, section 1 of the manual. Mwah πŸ’‹ stay testing, stay iconic βœ¨πŸ’–