Commit Graph

962 Commits

Author SHA1 Message Date
Vijay Pai 87dd702783 Fix embarassing break bug 2015-04-27 12:17:37 -07:00
Craig Tiller 98ae48d63c Ignore SIGPIPE 2015-04-27 11:20:39 -07:00
Craig Tiller 77e0d64b4d Fix a race in QPS client shutdown
Previously we were cleaning up threads only AFTER local resources were
reclaimed, leading to many crashes.
2015-04-27 10:52:54 -07:00
Vijay Pai 105ff2eb2e Support for open-loop sync test 2015-04-26 01:04:23 -07:00
Yang Gao c4b6ffb1b6 Add a GrpcLibrary class to wrap grpc_init and grpc_shutdown and convert all the tests to init/shutdown free. 2015-04-24 13:09:40 -07:00
Vijay Pai e23aba4884 Fix definition of InterarrivalTimer to enable late initialization
and use nanoseconds
2015-04-23 13:53:36 -07:00
vjpai 9cf0b3b84d Random number distributions and test for common distributions 2015-04-21 12:58:31 -07:00
Yang Gao 103837ee6b Wrap ParseCommandLineFlags in InitTest 2015-04-15 15:23:54 -07:00
Craig Tiller 217b7f0e80 Merge branch 'qps' into local_worker
Conflicts:
	Makefile
	build.json
	test/cpp/qps/worker.cc
2015-04-10 08:31:37 -07:00
Craig Tiller 66f37b477d Merge github.com:google/grpc into qps
Conflicts:
	Makefile
2015-04-10 08:28:31 -07:00
Craig Tiller 66048f4fc1 Add reporting library, use it 2015-04-10 08:23:52 -07:00
Craig Tiller 41faf0f4c8 s/11/1 2015-04-10 08:06:05 -07:00
Craig Tiller e9a6eb7332 Allow RunScenarios to spawn in-process workers
This allows us to get back to single binary tests where appropriate, which will help in-depth profiling efforts.
I've built this atop my smoke_test changes as they inspired me to get this done.
2015-04-09 15:51:41 -07:00
Craig Tiller c908eb65df :Merge branch 'qps' of github.com:ctiller/grpc into qps 2015-04-09 21:46:49 +00:00
Craig Tiller 4cc8a172f5 Tweaks 2015-04-09 21:46:33 +00:00
Yang Gao 3ca65e3228 Merge pull request #1238 from nicolasnoble/plugin-rework
Splitting gRPC service class codegen into its own set of files.
2015-04-09 14:35:42 -07:00
Nicolas "Pixel" Noble 0caebbfcfe Splitting gRPC service class codegen into its own set of files. 2015-04-09 23:08:51 +02:00
Craig Tiller 206d59a56a fine tuning 2015-04-09 20:06:33 +00:00
Craig Tiller 8221e40ac0 Indentation fixes, s/11/1/g 2015-04-09 12:23:21 -07:00
Craig Tiller 1c61af7364 Dont sleep forever on async cq 2015-04-09 12:08:44 -07:00
Craig Tiller 8a5a666ad0 Handle errors better on client 2015-04-09 11:31:28 -07:00
Craig Tiller aa2fca5a48 Remove asserts 2015-04-09 10:56:06 -07:00
Craig Tiller 2c2cf6d2c5 Smoke test initial version 2015-04-09 09:40:20 -07:00
Craig Tiller b9de09f2ac Allow specifying warmup, benchmark times 2015-04-08 17:08:05 -07:00
Vijay Pai f2554d051b Revive proper SIGINT handling 2015-04-02 13:58:27 -07:00
Vijay Pai 54e16ee548 Put in calls to profiling 2015-03-31 12:50:56 -07:00
Vijay Pai 49673133b3 Remove unused header file for profiler 2015-03-31 12:39:51 -07:00
Vijay Pai ce3bd9680b Remove outdated file 2015-03-31 12:06:20 -07:00
Yang Gao fa50753059 Merge pull request #1113 from vjpai/qps-stream
Add C++ streaming QPS test, fix bug in async C++ tests
2015-03-27 10:10:29 -07:00
vjpai 4bcab68012 Include the config.h file to make sure that nullptr is covered 2015-03-26 13:21:24 -07:00
Vijay Pai bef9cbc7dc Eliminate range-based fors 2015-03-26 11:02:06 -07:00
Vijay Pai 9032adcbef Fix conflicts 2015-03-26 10:32:52 -07:00
Vijay Pai 82dd80abc6 Elminate range-based fors and work around some other limitations in older compilers 2015-03-24 10:36:08 -07:00
Vijay Pai 6266b9341c Sweep different parameter sets in a single shell script. 2015-03-23 14:38:18 -07:00
Vijay Pai 1da729ad7d Merge branch 'qps-stream' of https://github.com/vjpai/grpc into vjpai-qps-stream 2015-03-23 12:52:56 -07:00
Vijay Pai 8ad32091e6 Make sure that nothing gets added to cq after shutdown 2015-03-23 12:44:28 -07:00
Vijay Pai 55bb5bdf80 No need to do an extra read 2015-03-23 12:44:09 -07:00
Vijay Pai c5b397927c test return value of rpc parse 2015-03-23 10:46:37 -07:00
vjpai 653803e310 Make RPC type configurable 2015-03-23 10:19:12 -07:00
vjpai 46f65239cf Added streaming C++ tests for sync and sync cases 2015-03-23 10:10:27 -07:00
Jan Tattermusch 5e36d0d474 Merge pull request #1093 from nicolasnoble/windows
Various Windows fixes.
2015-03-19 10:29:47 -07:00
Nicolas Noble cfd6073a66 Various Windows fixes.
-) using dupenv_s instead of getenv_s and calling strdup ourselves.
-) few impossible-to-obtain if checks.
-) various signed/unsigned casting.
-) using time_t instead of time32_t
-) checking output of FormatMessage for failures.
-) don't redefine _WIN32_WINNT without undefining it first.
-) fixed msvc's interlocked casting.
-) renamed AddPort to AddListeningPort.
-) added protobuf's third_party includes to search path.
-) added a missing definition for inet_ntop in mingw32.
-) removed useless declarations.
2015-03-19 04:21:22 +01:00
Yang Gao 6baa9b67ad clang-format c++ code 2015-03-17 10:49:39 -07:00
Chilledheart 4be94b9541 Add missing GRPC_OVERRIDE, NFC
Testing asan configuration with the latest clang compiler fails due to
the warning `-Winconsistent-missing-override`. This patch fixes it.
2015-03-10 00:46:10 +08:00
Craig Tiller 68de8e91cc Merge github.com:grpc/grpc into credit 2015-03-05 15:45:46 -08:00
Craig Tiller 43ef582e42 override --> GRPC_OVERRIDE 2015-03-04 20:01:09 -08:00
Craig Tiller 78524b75d7 Compile fix 2015-03-04 17:13:03 -08:00
Craig Tiller 2eaf1596bb ACTUALLY set the server thread pool 2015-03-04 14:47:18 -08:00
Craig Tiller a182bf12b0 clang-format 2015-03-04 13:54:39 -08:00
Craig Tiller 50a976f56c Linux compile fix 2015-03-04 13:40:52 -08:00
Craig Tiller 96cca4e83a Merge branch 'qps_driver' of github.com:ctiller/grpc into qps_driver 2015-03-04 13:40:06 -08:00
Craig Tiller c98bef7303 Compile fix 2015-03-04 13:01:21 -08:00
Craig Tiller a8dc37a2dd Rename some files 2015-03-04 12:56:00 -08:00
Craig Tiller d6479d6cc4 Async server works 2015-03-04 12:50:11 -08:00
Craig Tiller ef63839042 Async client works 2015-03-04 12:23:12 -08:00
Craig Tiller e38ec21122 Linux compile fix 2015-03-04 11:19:15 -08:00
Craig Tiller d1e18faefc Async client progress 2015-03-04 10:51:03 -08:00
Craig Tiller 8856875900 Async client progress 2015-03-04 10:50:43 -08:00
Craig Tiller f282514389 Print resource utilization 2015-03-03 17:15:36 -08:00
Craig Tiller d701c5f5c3 Formatting 2015-03-03 16:05:04 -08:00
Craig Tiller 76877c3f66 Generate latencies in driver 2015-03-03 16:04:23 -08:00
Craig Tiller e70a0cc7e5 Merge github.com:grpc/grpc into qps_driver 2015-03-03 15:21:34 -08:00
Craig Tiller 10923c2fb5 Formatting 2015-03-03 14:24:49 -08:00
Craig Tiller e7460e87d3 Merge github.com:grpc/grpc into credit 2015-03-03 13:48:40 -08:00
Craig Tiller 6af9ed0bf7 Rework QPS client/server
Now setup as a driver and N anonymous workers that may become clients or servers.
Will convert async soon.
2015-03-02 22:42:10 -08:00
Craig Tiller 26598a394a WIP 2015-03-02 16:16:00 -08:00
Vijay Pai acf6f318fc Better use of threads, avoid thread safety issues on destructor with
a proper join.

Also had been misusing EXPECT_EQ, as well as actually having an invalid
expectation on the ok field. Now it should be sane.
2015-03-02 15:13:39 -08:00
Craig Tiller 3e9cbc749a Merge github.com:grpc/grpc into qps_driver 2015-03-02 09:15:23 -08:00
Craig Tiller 61691f92c3 Merge github.com:grpc/grpc into credit 2015-03-02 08:51:52 -08:00
vjpai 4e1e1bc28e Revert "Use typedefs to avoid triply-nested function templates"
This reverts commit 45b0bc4bec.

This revert is being done because the compilers on Travis don't
understand the C++11 template/using syntax.
2015-02-27 23:47:12 -08:00
vjpai 45b0bc4bec Use typedefs to avoid triply-nested function templates 2015-02-27 16:54:17 -08:00
vjpai 5b39f9a9fb refresh -> Reset 2015-02-27 09:33:00 -08:00
vjpai 6e2e64a8b4 Stop abusing operator() overloading 2015-02-27 09:28:28 -08:00
vjpai 9440a14558 Move std::bind call out of main loop, change constructor appropriately 2015-02-27 09:19:09 -08:00
vjpai cd801c8531 <:: -> < :: 2015-02-27 07:21:31 -08:00
vjpai 3c11066217 override->GRPC_OVERRIDE 2015-02-27 07:17:16 -08:00
vjpai 1b47b12895 Merge remote-tracking branch 'upstream/master' 2015-02-26 23:16:25 -08:00
Vijay Pai 64ac47f389 clang-format all these files 2015-02-26 17:59:51 -08:00
vjpai 56c5129629 Rename Async methods from generator to avoid naming conflicts to
bind and other functions
2015-02-26 17:01:35 -08:00
vjpai dea740f329 New multithreaded async C++ tests. The server is architected the way
that it should be with multiple threads waiting on a single
completion queue.
The client currently uses a separate completion
queue per-thread, as trying to do a single unified queue was leading
to crashes for me. I need to figure that out.
2015-02-26 16:35:35 -08:00
Craig Tiller cf133f41f8 Make it possible to compile with gcc4.6 2015-02-26 14:27:05 -08:00
Craig Tiller 8ecb170151 Fix that race better 2015-02-24 17:08:23 -08:00
Craig Tiller 2f3fa9acff Fix linux compile bug 2015-02-24 17:04:22 -08:00
Craig Tiller 2d0f36c84b Driver to client/server kind of works 2015-02-23 23:16:17 -08:00
Craig Tiller 4ef7a29f31 Create server/client lists 2015-02-23 17:29:01 -08:00
Craig Tiller 4f7a1ff6ad 'Fix' a race 2015-02-23 17:16:56 -08:00
Craig Tiller e48601934d Getting the driver pieces in place
Driver logic not implemented yet
2015-02-23 17:10:41 -08:00
Craig Tiller 5c004c68de Driver changes
WIP - things compile again after a broad set of changes preparing for
the driver code.
2015-02-23 16:31:57 -08:00
Craig Tiller 42bc87c097 Update C++ server with new core API
And reflects the C++ API in ServerBuilder.
2015-02-23 09:58:23 -08:00
vjpai 5b47818d93 Some compilers not happy with <:: and need < :: instead 2015-02-20 11:42:42 -08:00
Nicolas "Pixel" Noble 7e80efcb3d Making the usage of gflags uniform across distributions. 2015-02-20 03:13:38 +01:00
Nicolas "Pixel" Noble ba6082080c Fixing gflags' include path. 2015-02-20 02:48:03 +01:00
Craig Tiller ce5021b0b9 Add missing new-lines at end of file 2015-02-18 09:25:21 -08:00
Craig Tiller 190d360def Add missing new-lines at end of file 2015-02-18 09:23:38 -08:00
Craig Tiller 0605995e55 Update copyright to 2015 2015-02-18 08:34:56 -08:00
Craig Tiller f74ec4ee43 Merge github.com:grpc/grpc into copyright 2015-02-18 08:30:14 -08:00
Craig Tiller ad1fd3a49e Add proto copyrights 2015-02-16 12:23:04 -08:00
Craig Tiller 5a4f991d5d Merge github.com:grpc/grpc into c++api
Conflicts:
	test/cpp/qps/server.cc
2015-02-11 07:56:42 -08:00
Vijay Pai 4ca479c3a1 Change pointer format 2015-02-10 10:55:53 -08:00
Vijay Pai c3b02d9a67 Allow varying number of server threads via command line flag 2015-02-10 10:39:03 -08:00
Craig Tiller f8ac5d846c Fixup callers with new api 2015-02-09 16:24:20 -08:00
Vijay Pai 0ea6b435f3 Merge pull request #324 from ctiller/bench
Add pprof support to qps client, server
2015-02-01 09:31:09 -08:00
Craig Tiller 056ba544a2 Add pprof support
Starts profiling on client and server.
On client, finishes after a test.
On the server, finishes after sigint.
2015-01-31 21:15:10 -08:00
Yang Gao 5fd0d29dfe run clang-format 2015-01-26 00:19:48 -08:00
Craig Tiller 8a7a152919 Remove unused private field 2015-01-14 14:12:49 -08:00
Craig Tiller 1ee7cb0c0b Merge github.com:google/grpc into format 2015-01-13 12:39:00 -08:00
Craig Tiller bf2659f0b6 Fix qps test.
This was failing to compile.
2015-01-13 12:27:06 -08:00
vpai 92fe70e983 Added new results to report resource usage and QPS, along with new proto support for this
and also to turn the client into a server that can be controlled remotely (client part
not implemented yet)
	Change on 2015/01/13 by vpai <vpai@google.com>
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=83863541
2015-01-13 11:40:07 -08:00
Craig Tiller b5dcec5a2e clang-format codebase 2015-01-13 11:13:42 -08:00
yangg 59dfc90f57 Client side implementation of creating channel with credentials.
The old test_ssl_channel related code is deleted and the new create channel
call is used for interop tests.
	Change on 2014/12/19 by yangg <yangg@google.com>
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=82540921
2014-12-29 16:59:06 -08:00
yangg a4b6f5df94 Add ServerContext. It is currently empty and deadline and metadata will come to
it in subsequent cl's.
	Change on 2014/12/17 by yangg <yangg@google.com>
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=82372934
2014-12-19 13:02:04 -08:00
vpai 80b6d014ad Prepare QPS tests for running in GCE
Edit build.json to include qps tests and credentials
Perform required MOE edits for running qps tests in VM
Minor changes to underlying source files to support
issues like more restrictive warning flags in cloud.
	Change on 2014/12/17 by vpai <vpai@google.com>
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=82349829
2014-12-17 15:52:15 -08:00