#
mysqlslap  -uroot -pxxx --debug-info --engine=innodb --concurrency=300,400 --auto-generate-sql-load-type=read,write  --create-schema=test query=test.sql
Warning: Using a password on the command line interface can be insecure.
Benchmark
       Running for engine innodb
       Average number of seconds to run all queries: 0.046 seconds
       Minimum number of seconds to run all queries: 0.046 seconds
       Maximum number of seconds to run all queries: 0.046 seconds
       Number of clients running queries: 300
       Average number of queries per client: 0
mysqlslap: Could not create thread
原因
由于系统默认的“stack size”为10M,这样并发300个进程时,就消耗了10M X 300 = 3000M 内存,超过系统可用内存导致
解决
通过修改”stack size“为1M(1024),这样并发3000个进程就相当于系统默认的300个进程的内存使用量。
ulimit -s 1024
在做一次
mysqlslap  -uroot -pxxx --debug-info --engine=innodb --concurrency=300,400 --auto-generate-sql-load-type=read,write  --create-schema=test query=test.sql
Warning: Using a password on the command line interface can be insecure.
Benchmark
       Running for engine innodb
       Average number of seconds to run all queries: 0.047 seconds
       Minimum number of seconds to run all queries: 0.047 seconds
       Maximum number of seconds to run all queries: 0.047 seconds
       Number of clients running queries: 300
       Average number of queries per client: 0
Benchmark
       Running for engine innodb
       Average number of seconds to run all queries: 0.074 seconds
       Minimum number of seconds to run all queries: 0.074 seconds
       Maximum number of seconds to run all queries: 0.074 seconds
       Number of clients running queries: 400
       Average number of queries per client: 0
User time 0.03, System time 0.03
Maximum resident set size 0, Integral resident set size 0
Non-physical pagefaults 2594, Physical pagefaults 0, Swaps 0
Blocks in 0 out 0, Messages in 0 out 0, Signals 0
Voluntary context switches 1295, Involuntary context switches 3629
成功