* Revert "Revert "Adding methods to get memory usage of server for the perchannel benchmark (#30390)" (#30433)"
This reverts commit 3fe438b55a.
* Made all variables used
* Added new files for channel client/server
* Committing to switch branch
* Rebasing branch
* Switching branch
* Server process getting called
* Still working
* RPC received success, with sleep
* gRPC Receive success, grpc timeout
* Earlier but Clang tidy
* Fix timeout issue, remove some logs
* Added signint handler, test passing but flaky
* added sleep to reduce flakiness, removed some dependencies, changed LOG to gpr_log
* Changed benchmark_name default back to call
* remove deleted files
* grpc shutdown timeout
* trying to add shutdown
* Some changes
* Removed shutdown
* Automated change: Fix sanity tests
* Changes for review comments
* Changed comments
* Changed benchmark driver defaults so that CI testing would happen for all benchmarks
* Get server memory using RPC
* Add PID method to get memory
* Added gpr_subprocess_get_process_id to windows
* Removed GetAfterSnapshot since theres a not RPC method to get memory
* Automated change: Fix sanity tests
* Changed benchmark driver defaults so that CI testing would happen for all benchmarks
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* Forgot semicolon
* Fix includes
* Automated change: Fix sanity tests
* Added GetMemUsage and changed Snapshot and callback server and client to call it
* Moved GetMemUsage from header file
* removed some unnecessary includes
* Automated change: Fix sanity tests
* Updating build file
* forgot a comma
* Added tags to BUILD for memstats
* Automated change: Fix sanity tests
Co-authored-by: nancylucy01 <nancylucy01@users.noreply.github.com>
Port fling_test to it.
This will be used to:
- port remaining tests to Windows
- enable testing what happens when servers or clients mysteriously disappear
-) Let's not use _POSIX_SOURCE. It usually implies too much C99. _BSD_SOURCE would be the right thing to do here.
-) _BSD_SOURCE is getting deprecated by glibc, so we also have to define _DEFAULT_SOURCE under Linux.
-) accept4 and eventfd arn't as old as we may think; let's detect for it.
-) stdint.h interferes with all these definitions if included too early; let's move it down.
- Had to add support for files and environment variables as well.
- I can't compile on windows so I'm sure there will be some issues.
- Tested end-to-end with the simple ssl fullstack test.
Move eventmanager and platform dependent endpoint functionality into a single
library called 'iomgr'.
This is primarily to prepare for a Windows port - where posix socket semantics
lead to poor quality code.
Mostly this is a code movement CL, with some small changes to help prepare the
way for porting:
- em style fd objects can only be held internally in iomgr, and own their memory
- added grpc_iomgr_create_endpoint_pair() to accomodate the common pattern of
creating a tcp endpoint from the output of socketpair - this will help keep
our tests portable
- separated em alarm interface into a separate file, as this part of event
manager is needed higher up the stack
- made the eventmanager bits a true singleton, simplifying API's across the
stack as there's no longer a reason to carry a pointer there.
Initial design document is here:
https://docs.google.com/document/d/1VmafcHvvrP5kwtQkz84R5yXF7u7fW-9Pn0bkSUQHDt8/edit?disco=AAAAARNByxg
Change on 2014/12/09 by ctiller <ctiller@google.com>
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=81716456