[Signal and Systems] 零状态响应的线性系统

image-20200410131255339

关注连续系统

零输入响应

image-20200410131847453

零状态响应

image-20200410131908539

cond

image-20200410150318280

A brief summary of why we have to learn S&S

image-20200410150800810

Note:

  1. The "齐次方程" and "齐次方程的通解“ is different.
  2. An example why \(f(0_-)\) is not 0 since \(f\) is a causal system: before the impulse, is the state of $0_-$, the effect is the zero-state response. So regarding the physical meaning, they are different.image-20200410151420119

Matlab intro

Matlab can't defer the zero-state or zero-input

image-20200410151508171

a novel way to read from tar volume

intro

some of the volume is right in the root folder of the tar, for example.

.
├── AUTHORS
├── boards
│   ├── arm64.gni
│   ├── as370.gni
│   ├── BUILD.gn
│   ├── c18.gni
│   ├── chromebook-x64.gni
│   ├── cleo.gni
│   ├── hikey960.gni
│   ├── kirin970.gni
│   ├── msm8998.gni
│   ├── msm8x53-som.gni
│   ├── mt8167s_ref.gni
│   ├── OWNERS
│   ├── qemu-arm64.gni
│   ├── qemu-x64.gni
│   ├── toulouse.gni
│   ├── vim2.gni
│   ├── vim3.gni
│   ├── vs680.gni
│   └── x64.gni
├── build
│   ├── banjo
│   │   ├── banjo.gni
│   │   ├── banjo_library.gni
│   │   ├── BUILD.gn
│   │   ├── gen_response_file.py
│   │   ├── gen_sdk_meta.py
│   │   └── toolchain.gni
│   ├── bind
│   │   └── bind.gni
│   ├── board.gni
│   ├── BUILD.gn
│   ├── build_id.gni
│   ├── c
│   │   ├── banjo_c.gni
│   │   ├── BUILD.gn
│   │   └── fidl_c.gni
│   ├── cat.sh
│   ├── cipd.gni
│   ├── cmake
│   │   ├── HostLinuxToolchain.cmake
│   │   ├── README.md
│   │   └── ToolchainCommon.cmake
│   ├── cmx
│   │   ├── block_deprecated_misc_storage.json
│   │   ├── block_deprecated_shell.json
│   │   ├── block_rootjob_svc.json
│   │   ├── block_rootresource_svc.json
│   │   ├── cmx.gni
│   │   ├── facets
│   │   │   └── module_facet_schema.json
│   │   ├── internal_allow_global_data.cmx
│   │   └── OWNERS
│   ├── compiled_action.gni
│   ├── config
│   │   ├── arm.gni
│   │   ├── BUILDCONFIG.gn
│   │   ├── BUILD.gn
│   │   ├── clang
│   │   │   └── clang.gni
│   │   ├── compiler.gni
│   │   ├── fuchsia
│   │   │   ├── BUILD.gn
│   │   │   ├── rules.gni
│   │   │   ├── sdk.gni
│   │   │   ├── zbi.gni
│   │   │   ├── zircon.gni
│   │   │   ├── zircon_images.gni
│   │   │   └── zircon_legacy_vars.gni
│   │   ├── host_byteorder.gni
│   │   ├── linux
│   │   │   └── BUILD.gn
│   │   ├── lto
│   │   │   ├── BUILD.gn
│   │   │   └── config.gni
│   │   ├── mac
│   │   │   ├── BUILD.gn
│   │   │   ├── mac_sdk.gni
│   │   │   └── package_framework.py
│   │   ├── OWNERS
│   │   ├── profile
│   │   │   └── BUILD.gn
│   │   ├── sanitizers
│   │   │   ├── asan_default_options.c
│   │   │   ├── BUILD.gn
│   │   │   ├── debugdata.cmx
│   │   │   └── ubsan_default_options.c
│   │   ├── scudo
│   │   │   ├── BUILD.gn
│   │   │   ├── scudo_default_options.c
│   │   │   └── scudo.gni
│   │   └── sysroot.gni
│   ├── config.gni
│   ├── cpp
│   │   ├── binaries.py
│   │   ├── BUILD.gn
│   │   ├── extract_imported_symbols.gni
│   │   ├── extract_imported_symbols.sh
│   │   ├── extract_public_symbols.gni
│   │   ├── extract_public_symbols.sh
│   │   ├── fidl_cpp.gni
│   │   ├── fidlmerge_cpp.gni
│   │   ├── gen_sdk_prebuilt_meta_file.py
│   │   ├── gen_sdk_sources_meta_file.py
│   │   ├── sdk_executable.gni
│   │   ├── sdk_shared_library.gni
│   │   ├── sdk_source_set.gni
│   │   ├── sdk_static_library.gni
│   │   ├── verify_imported_symbols.gni
│   │   ├── verify_imported_symbols.sh
│   │   ├── verify_pragma_once.gni
│   │   ├── verify_pragma_once.py
│   │   ├── verify_public_symbols.gni
│   │   ├── verify_public_symbols.sh
│   │   └── verify_runtime_deps.py
│   ├── dart
│   │   ├── BUILD.gn
│   │   ├── dart.gni
│   │   ├── dart_library.gni
│   │   ├── dart_remote_test.gni
│   │   ├── dart_tool.gni
│   │   ├── empty_pubspec.yaml
│   │   ├── fidl_dart.gni
│   │   ├── fidlmerge_dart.gni
│   │   ├── gen_analyzer_invocation.py
│   │   ├── gen_app_invocation.py
│   │   ├── gen_dart_test_invocation.py
│   │   ├── gen_dot_packages.py
│   │   ├── gen_remote_test_invocation.py
│   │   ├── gen_test_invocation.py
│   │   ├── group_tests.py
│   │   ├── label_to_package_name.py
│   │   ├── OWNERS
│   │   ├── run_analysis.py
│   │   ├── sdk
│   │   │   ├── detect_api_changes
│   │   │   │   ├── analysis_options.yaml
│   │   │   │   ├── bin
│   │   │   │   │   └── main.dart
│   │   │   │   ├── BUILD.gn
│   │   │   │   ├── lib
│   │   │   │   │   ├── analyze.dart
│   │   │   │   │   ├── diff.dart
│   │   │   │   │   └── src
│   │   │   │   │       └── visitor.dart
│   │   │   │   ├── pubspec.yaml
│   │   │   │   ├── schema.json
│   │   │   │   └── test
│   │   │   │       ├── analyze_test.dart
│   │   │   │       └── diff_test.dart
│   │   │   ├── gen_meta_file.py
│   │   │   └── sort_deps.py
│   │   ├── test.gni
│   │   ├── toolchain.gni
│   │   └── verify_sources.py
│   ├── development.key
│   ├── driver_package.gni
│   ├── fidl
│   │   ├── BUILD.gn
│   │   ├── fidl.gni
│   │   ├── fidl_library.gni
│   │   ├── gen_response_file.py
│   │   ├── gen_sdk_meta.py
│   │   ├── linting_exceptions.gni
│   │   ├── OWNERS
│   │   ├── run_and_gen_stamp.sh
│   │   ├── toolchain.gni
│   │   └── wireformat.gni
│   ├── fuchsia
│   │   └── sdk.gni
│   ├── Fuchsia.cmake
│   ├── fuzzing
│   │   ├── BUILD.gn
│   │   ├── fuzzer.gni
│   │   └── OWNERS
│   ├── gn
│   │   ├── BUILD.gn
│   │   ├── gen_persistent_log_config.py
│   │   ├── OWNERS
│   │   ├── unpack_build_id_archives.sh
│   │   └── write_package_json.py
│   ├── gn_helpers.py
│   ├── gn_run_binary.sh
│   ├── go
│   │   ├── BUILD.gn
│   │   ├── build.py
│   │   ├── fidl_go.gni
│   │   ├── gen_library_metadata.py
│   │   ├── go_binary.gni
│   │   ├── go_build.gni
│   │   ├── go_fuzzer.gni
│   │   ├── go_fuzzer_wrapper.go
│   │   ├── go_library.gni
│   │   ├── go_test.gni
│   │   ├── OWNERS
│   │   └── toolchain.gni
│   ├── gypi_to_gn.py
│   ├── host.gni
│   ├── images
│   │   ├── add_tag_to_manifest.sh
│   │   ├── args.gni
│   │   ├── assemble_system.gni
│   │   ├── boot.gni
│   │   ├── bringup
│   │   │   └── BUILD.gn
│   │   ├── BUILD.gn
│   │   ├── collect_blob_manifest.gni
│   │   ├── create-shell-commands.py
│   │   ├── custom_signing.gni
│   │   ├── dummy
│   │   │   └── example.txt
│   │   ├── efi_local_cmdline.txt
│   │   ├── elfinfo.py
│   │   ├── filesystem_limits.gni
│   │   ├── finalize_manifests.py
│   │   ├── format_filesystem_sizes.py
│   │   ├── fvm.gni
│   │   ├── generate_flash_script.sh
│   │   ├── guest
│   │   │   ├── BUILD.gn
│   │   │   └── guest_meta_package.json
│   │   ├── manifest_add_dest_prefix.sh
│   │   ├── manifest_content_expand.sh
│   │   ├── manifest.gni
│   │   ├── manifest_list_collect_unique_blobs.py
│   │   ├── manifest.py
│   │   ├── max_fvm_size.gni
│   │   ├── OWNERS
│   │   ├── pack-images.py
│   │   ├── pkgfs.gni
│   │   ├── recovery
│   │   │   └── BUILD.gn
│   │   ├── shell_commands.gni
│   │   ├── system_image_prime_meta_package.json
│   │   ├── system_meta_package.json
│   │   ├── ta.gni
│   │   ├── update_package.json
│   │   ├── update_prime_package.json
│   │   ├── variant.py
│   │   ├── vbmeta.gni
│   │   ├── zedboot
│   │   │   ├── BUILD.gn
│   │   │   ├── efi_cmdline.txt
│   │   │   └── zedboot_args.gni
│   │   ├── zircon
│   │   │   ├── bootsvc.gni
│   │   │   └── BUILD.gn
│   │   └── zxcrypt.gni
│   ├── info
│   │   ├── BUILD.gn
│   │   ├── gen-latest-commit-date.sh
│   │   └── info.gni
│   ├── __init__.py
│   ├── json
│   │   └── validate_json.gni
│   ├── mac
│   │   └── find_sdk.py
│   ├── make_map.py
│   ├── module_args
│   │   └── dart.gni
│   ├── OWNERS
│   ├── package
│   │   └── component.gni
│   ├── package.gni
│   ├── packages
│   │   ├── BUILD.gn
│   │   ├── OWNERS
│   │   ├── prebuilt_package.gni
│   │   ├── prebuilt_package.py
│   │   ├── prebuilt_test_manifest.gni
│   │   └── prebuilt_test_package.gni
│   ├── persist_logs.gni
│   ├── README.md
│   ├── rust
│   │   ├── banjo_rust.gni
│   │   ├── banjo_rust_library.gni
│   │   ├── BUILD.gn
│   │   ├── config.gni
│   │   ├── fidl_rust.gni
│   │   ├── fidl_rust_library.gni
│   │   ├── list_files_in_dir.py
│   │   ├── OWNERS
│   │   ├── rustc_binary.gni
│   │   ├── rustc_binary_sdk.gni
│   │   ├── rustc_cdylib.gni
│   │   ├── rustc_fuzzer.gni
│   │   ├── rustc_library.gni
│   │   ├── rustc_macro.gni
│   │   ├── rustc_staticlib.gni
│   │   ├── rustc_test.gni
│   │   ├── stamp.sh
│   │   └── toolchain.gni
│   ├── sdk
│   │   ├── BUILD.gn
│   │   ├── compute_atom_api.py
│   │   ├── config.gni
│   │   ├── create_atom_manifest.py
│   │   ├── create_molecule_manifest.py
│   │   ├── export_sdk.py
│   │   ├── generate_archive_manifest.py
│   │   ├── generate_meta.py
│   │   ├── manifest_schema.json
│   │   ├── merged_sdk.gni
│   │   ├── meta
│   │   │   ├── banjo_library.json
│   │   │   ├── BUILD.gn
│   │   │   ├── cc_prebuilt_library.json
│   │   │   ├── cc_source_library.json
│   │   │   ├── common.json
│   │   │   ├── dart_library.json
│   │   │   ├── device_profile.json
│   │   │   ├── documentation.json
│   │   │   ├── fidl_library.json
│   │   │   ├── host_tool.json
│   │   │   ├── loadable_module.json
│   │   │   ├── manifest.json
│   │   │   ├── README.md
│   │   │   ├── src
│   │   │   │   ├── banjo_library.rs
│   │   │   │   ├── cc_prebuilt_library

conclusion

tar tjvf {}.bz2 | grep ^d  | awk -F/  '{if(NF<4) print }'

insights

  1. NF in awk is the number of fields divided by '/'! Not the number of '/'!
  2. After the '/' at the end of the line, even if there are no more characters, it is then counted into a field!
  3. For example, the following: drwxr-xr-x root / root 0 2011-08-26 09:18 bin / This is 3 fields! !! !!

[RL] Bandit 算法

反馈:奖励

agent

action

image-20200323202634980

bandit 是强化学习的特例

利用与探索的两难

image-20200323201224285

短期与长期的对决

现实中的例子

image-20200323202023702

两臂老虎机

image-20200323202052208

三种类型

image-20200323201115089

奖励模型

image-20200323201147330

Decision making under uncertainty

image-20200323202734469

action vs. reward

image-20200323202834612

types of reward

image-20200323202956864

types of rewards model

image-20200323203015693

types of context

image-20200323203036389

example

image-20200323203050013

先验or后验

structured

global

summary

image-20200323203151320

example

网飞 展示广告

随机bandit

image-20200323203325042

image-20200323203342197

regret: equivalent goal

the value of an arbitrary action a is the mean reward for a (unknown):

image-20200323203438417

the optimal value is image-20200323203451851

we care about total regret

image-20200323203519243

image-20200323203526999

example on a

In general, those values are unknown.

we must try actions to learn the action-values(explore), and prefer those that appear best(exploit).

image-20200323203735348

action-value methods

image-20200323203817595

methods that learn action-value estimates and nothing else

根据强大数定理。收敛于真实期望值。

counting regret

image-20200323203927822

桥梁:计算total regret。 变量为指示变量

image-20200323204235802

image-20200323204326559image-20200323204347402

image-20200323204427181

亚当定理:得到lemma的结果

how to define a good learner.

image-20200323204604537

linear!! 有两种情况

image-20200323204646089

Greedy algorithm

image-20200323204721559

每次取最高的期望

\(\epsilon - greedy\)

防止出现局部最优

image-20200323204820675

proof of lower bound

image-20200323204836932

incremental implementation

性能考量、实现在线学习

image-20200323204942027

proof

image-20200323205150459

bandit notation

image-20200323205226555

image-20200323205237009

image-20200323205250785

进一步提高性能 Optimistic Initial values

All methods s ofar depends on image-20200323205414740 which is 0 in this case. but we can do 5.

Initally bad case for more 尝试。

image-20200323205430019

algorithm

image-20200323205543177

DecayIng \(\epsilon _{t} -Greedy\)

insight:先降后升

image-20200323205851377

performance comparison

image-20200323205925713## bandit algorithm lower bounds(depends on gaps)

image-20200323210003976

Optimism in the face of uncertainty

image-20200323210132650

which action to pick?

image-20200323210152032

越未知需要探索

Upper Confidence Bound

image-20200323210543776

hoeffding's inequality

image-20200323210628855

general case

image-20200323210645481

calculation

image-20200323210718913

取bound得到置信区间的位置

UCB1

image-20200323210818935

action 没有被充分的探索过,所以需要探索

上界探索

credit:https://jeremykun.com/2013/10/28/optimism-in-the-face-of-uncertainty-the-ucb1-algorithm/

Theorem: Suppose UCB1 is run as above. Then its expected cumulative regret \mathbb{E}(latex-1584977927119.png) is at most$\displaystyle 8 \sum_{i : \mu_i < \mu^*} \frac{\log T}{\Delta_i} + \left ( 1 + \frac{\pi^2}{3} \right ) \left ( \sum_{j=1}^K \Delta_j \right )$

Okay, this looks like one nasty puppy, but it’s actually not that bad. The first term of the sum signifies that we expect to play any suboptimal machine about a logarithmic number of times, roughly scaled by how hard it is to distinguish from the optimal machine. That is, if \Delta_i is small we will require more tries to know that action i is suboptimal, and hence we will incur more regret. The second term represents a small constant number (the $1 + \pi^2 / 3$ part) that caps the number of times we’ll play suboptimal machines in excess of the first term due to unlikely events occurring. So the first term is like our expected losses, and the second is our risk.

But note that this is a worst-case bound on the regret. We’re not saying we will achieve this much regret, or anywhere near it, but that UCB1 simply cannot do worse than this. Our hope is that in practice UCB1 performs much better.

Before we prove the theorem, let’s see how derive the O(latex-1584977927114.png) bound mentioned above. This will require familiarity with multivariable calculus, but such things must be endured like ripping off a band-aid. First consider the regret as a function R(latex-1584977927125.png) (excluding of course \Delta^*), and let’s look at the worst case bound by maximizing it. In particular, we’re just finding the problem with the parameters which screw our bound as badly as possible, The gradient of the regret function is given by

\displaystyle \frac{\partial R}{\partial \Delta_i} = - \frac{8 \log T}{\Delta_i2} + 1 + \frac{\pi2}{3}

and it’s zero if and only if for each i, } = O(latex-1584977927124.png). However this is a minimum of the regret bound (the Hessian is diagonal and all its eigenvalues are positive). Plugging in the \Delta_i = O(latex-1584977927170.png) (which are all the same) gives a total bound of O(latex-1584977927132.png). If we look at the only possible endpoint (the \Delta_i = 1), then we get a local maximum of O(latex-1584977927132.png). But this isn’t the O(latex-1584977927114.png) we promised, what gives? Well, this upper bound grows arbitrarily large as the \Delta_i go to zero. But at the same time, if all the \Delta_i are small, then we shouldn’t be incurring much regret because we’ll be picking actions that are close to optimal!

Indeed, if we assume for simplicity that all the \Delta_i = \Delta are the same, then another trivial regret bound is \Delta T (why?). The true regret is hence the minimum of this regret bound and the UCB1 regret bound: as the UCB1 bound degrades we will eventually switch to the simpler bound. That will be a non-differentiable switch (and hence a critical point) and it occurs at \Delta = O(latex-1584977927136.png). Hence the regret bound at the switch is \Delta T = O(latex-1584977927304.png), as desired.

Proving the Worst-Case Regret Bound

Proof. The proof works by finding a bound on P_i(latex-1584978965148.png), the expected number of times UCB chooses an action up to round T. Using the \Delta notation, the regret is then just \sum_i \Delta_i \mathbb{E}(latex-1584978965117.png), and bounding the P_i‘s will bound the regret.

Recall the notation for our upper bound a(latex-1584978965147.png) = \sqrt{2 \log T / P_j(T)} and let’s loosen it a bit to a(latex-1584978965148.png) = \sqrt{2 \log T / y} so that we’re allowed to “pretend” a action has been played y times. Recall further that the random variable I_t has as its value the index of the machine chosen. We denote by \chi(latex-1584978965127.png) the indicator random variable for the event E. And remember that we use an asterisk to denote a quantity associated with the optimal action (e.g., \overline{x}^* is the empirical mean of the optimal action).

Indeed for any action i, the only way we know how to write down P_i(T) is as

\displaystyle P_i(latex-1584978965149.png) = 1 + \sum_{t=K}^T \chi(I_t = i)

The 1 is from the initialization where we play each action once, and the sum is the trivial thing where just count the number of rounds in which we pick action i. Now we’re just going to pull some number m-1 of plays out of that summation, keep it variable, and try to optimize over it. Since we might play the action fewer than m times overall, this requires an inequality.

P_i(latex-1584978965206.png) \leq m + \sum_{t=K}^T \chi(I_t = i \textup{ and } P_i(t-1) \geq m)

These indicator functions should be read as sentences: we’re just saying that we’re picking action i in round t and we’ve already played i at least m times. Now we’re going to focus on the inside of the summation, and come up with an event that happens at least as frequently as this one to get an upper bound. Specifically, saying that we’ve picked action i in round t means that the upper bound for action i exceeds the upper bound for every other action. In particular, this means its upper bound exceeds the upper bound of the best action (and i might coincide with the best action, but that’s fine). In notation this event is

\displaystyle \overline{x}_i + a(latex-1584978965271.png) \geq \overline{x}* + a(P*(T), t-1)

Denote the upper bound \overline{x}_i + a(latex-1584978965272.png) for action i in round t by U_i(latex-1584978965333.png). Since this event must occur every time we pick action i (though not necessarily vice versa), we have

\displaystyle P_i(latex-1584978964873.png) \leq m + \sum_{t=K}T \chi(U_i(t-1) \geq U*(t-1) \textup{ and } P_i(t-1) \geq m)

We’ll do this process again but with a slightly more complicated event. If the upper bound of action i exceeds that of the optimal machine, it is also the case that the maximum upper bound for action i we’ve seen after the first m trials exceeds the minimum upper bound we’ve seen on the optimal machine (ever). But on round t we don’t know how many times we’ve played the optimal machine, nor do we even know how many times we’ve played machine i (except that it’s more than m). So we try all possibilities and look at minima and maxima. This is a pretty crude approximation, but it will allow us to write things in a nicer form.

Denote by \overline{x}_{i,s} the random variable for the empirical mean after playing action i a total of s times, and \overline{x}^*_s the corresponding quantity for the optimal machine. Realizing everything in notation, the above argument proves that

\displaystyle P_i(T) \leq m + \sum_{t=K}T \chi \left ( \max_{m \leq s < t} \overline{x}{i,s} + a(s, t-1) \geq \min{0 < s' < t} \overline{x}*_{s'} + a(s', t-1) \right )

Indeed, at each t for which the max is greater than the min, there will be at least one pair s,s' for which the values of the quantities inside the max/min will satisfy the inequality. And so, even worse, we can just count the number of pairs s, s' for which it happens. That is, we can expand the event above into the double sum which is at least as large:

\displaystyle P_i(T) \leq m + \sum_{t=K}T \sum_{s = m}{t-1} \sum_{s' = 1}{t-1} \chi \left ( \overline{x}_{i,s} + a(s, t-1) \geq \overline{x}*_{s'} + a(s', t-1) \right )

We can make one other odd inequality by increasing the sum to go from t=1 to \infty. This will become clear later, but it means we can replace t-1 with t and thus have

\displaystyle P_i(T) \leq m + \sum_{t=1}\infty \sum_{s = m}{t-1} \sum_{s' = 1}{t-1} \chi \left ( \overline{x}_{i,s} + a(s, t) \geq \overline{x}*_{s'} + a(s', t) \right )

Now that we’ve slogged through this mess of inequalities, we can actually get to the heart of the argument. Suppose that this event actually happens, that \overline{x}{i,s} + a(s, t) \geq \overline{x}^*{s'} + a(s', t). Then what can we say? Well, consider the following three events:

(1) \displaystyle \overline{x}*_{s'} \leq \mu* - a(s', t)
(2) \displaystyle \overline{x}_{i,s} \geq \mu_i + a(latex-1584978965039.png)
(3) \displaystyle \mu^* < \mu_i + 2a(s, t)

In words, (1) is the event that the empirical mean of the optimal action is less than the lower confidence bound. By our Chernoff bound argument earlier, this happens with probability t^{-4}. Likewise, (2) is the event that the empirical mean payoff of action i is larger than the upper confidence bound, which also occurs with probability t^{-4}. We will see momentarily that (3) is impossible for a well-chosen m (which is why we left it variable), but in any case the claim is that one of these three events must occur. For if they are all false, we have

\displaystyle \begin{matrix} \overline{x}{i,s} + a(s, t) \geq \overline{x}^*{s'} + a(s', t) & > & \mu^* - a(s',t) + a(s',t) = \mu^* \ \textup{assumed} & (1) \textup{ is false} & \ \end{matrix}

and

\begin{matrix} \mu_i + 2a(s,t) & > & \overline{x}{i,s} + a(s, t) \geq \overline{x}^*{s'} + a(s', t) \ & (2) \textup{ is false} & \textup{assumed} \ \end{matrix}

But putting these two inequalities together gives us precisely that (3) is true:

\mu^* < \mu_i + 2a(s,t)

This proves the claim.

By the union bound, the probability that at least one of these events happens is 2t^{-4} plus whatever the probability of (3) being true is. But as we said, we’ll pick m to make (3) always false. Indeed m depends on which action i is being played, and if s \geq m > 8 \log T / \Delta_i^2 then 2a(latex-1584978965191.png) \leq \Delta_i, and by the definition of \Delta_i we have

\mu^* - \mu_i - 2a(latex-1584978965195.png) \geq \mu^* - \mu_i - \Delta_i = 0.

Now we can finally piece everything together. The expected value of an event is just its probability of occurring, and so

\displaystyle \begin{aligned} \mathbb{E}(P_i(T)) & \leq m + \sum_{t=1}\infty \sum_{s=m}t \sum_{s' = 1}t \textup{P}(\overline{x}_{i,s} + a(s, t) \geq \overline{x}*_{s'} + a(s', t)) \ & \leq \left \lceil \frac{8 \log T}{\Delta_i2} \right \rceil + \sum_{t=1}\infty \sum_{s=m}t \sum_{s' = 1}t 2t{-4} \ & \leq \frac{8 \log T}{\Delta_i2} + 1 + \sum_{t=1}\infty \sum_{s=1}t \sum_{s' = 1}t 2t{-4} \ & = \frac{8 \log T}{\Delta_i2} + 1 + 2 \sum_{t=1}\infty t^{-2} \ & = \frac{8 \log T}{\Delta_i2} + 1 + \frac{\pi2}{3} \ \end{aligned}

The second line is the Chernoff bound we argued above, the third and fourth lines are relatively obvious algebraic manipulations, and the last equality uses the classic solution to Basel’s problem. Plugging this upper bound in to the regret formula we gave in the first paragraph of the proof establishes the bound and proves the theorem.

result

image-20200324001226338

Intro for Thompson Sampling

Probability Matching

image-20200324001312794

~ 最大后验概率

image-20200324001334684

history

image-20200324001445661

在知道后验的情况下比UCB 好

beta-bernoulli bandit

image-20200324001641824

先验共轭

image-20200324001710568

greedy vs. Thompson Sampling

image-20200324001741847

第一步不一样。 期望 vs 样本值

simulation

image-20200324001834578

image-20200324001902205

image-20200324001918590

Other kind of Bayesian inference

image-20200324002105541

梯度bandit 算法

随机梯度上升法

image-20200324002149133

image-20200324002430374

why not 梯度下降?

​ more general for RL

image-20200324002556856

proof

image-20200324004923787

image-20200324005138180

// lemma 1 for homework

image-20200324005203636

image-20200324005337331

image-20200324005415850

image-20200324005443234

梯度的期望->期望的梯度

Adversarial Bandit

image-20200324005708760

simple bandit game

image-20200324005804371

image-20200324010052550

importance-weighted estimators

image-20200324010145087

用于估计其他未被触发的arm

another good algorithm

image-20200324011008118

bias ~ variance tradeoff

方差太大。

几率小的reward 现在增大了。 用隐含的增加的探索来使反差减少

algorithm

image-20200324011146738

adversary bandits with expert's advice

image-20200324011216181

image-20200324011302481

意见的权重的分布=》exp4

additional exploration

uniform exploration

proved no need

image-20200324011420766

summary

image-20200324011450638

bound

image-20200324011524504

看作为独立为RL之外的眼界方向

image-20200324011616176

[Parallel Computing] Implementing collective communication

Collective communication

  • Important as the basis for many parallel algorithms.
  • Implemented using multiple point to point communications, possibly in parallel.
    • Assume communicating m words (without contention) between a source and destination takes \(t_{s} + m t_{w}\) time.
    • Ignore the the distance of the message, since per hop latency th is usually small.
  • With contention c, time becomes \(t_{s} + c m t_{w}\).
  • Implementations depend on communication hardware architecture.
  • Operations
  • Broadcast and reduction.
  • All-to-all broadcast and reduction.
  • All-reduce, prefix sum.
  • Scatter and gather.
  • All-to-all scatter and reduce.
  • Circular shift.

Broadcast and reduction on ring

image-20200323151043402

just cut them into halves.

cost

  • With p processors, log p steps.
  • In each step, a processor sends a size m message.
  • Total time$ (t_{s} + m t_{w}) log p$ take \((t_{s} + m t_{w})\) as const

Broadcast on mesh

image-20200323152756914

algorithm

  • Root first broadcasts along its row using ring algorithm.
  • The nodes of root’s row then broadcast along their columns using ring algorithm.

cost

  • \(log \sqrt{p} = (log p) / 2\) steps along row, same along columns.
  • Total time (ts + m tw) log p.log
  • p = (log p) / 2 steps along row, same along columns.
  • Total time (ts + m tw) log p.

Broadcast on hypercube

algorithm

image-20200323151732584

RING CAN BE PROJECTED TO THE HYPERCUBE but with more congestion.

prefix sum on hypercube

image-20200323154823396

关于和龙哥的比赛

我和龙哥以前大概还有大概一样的兴趣,只是貌似他自从icpc退役又回归以后,就在没有管过比赛。他也是个执拗的人,我无能为力。只是我还算比较负责。

MIPS 龙芯杯

我辜负了哈老师,还是我菜,我想自己做的,先mark一下明年找学弟好好做吧。我选一下CA2和EE的课。我自己做个多核cpu。

动力:自己造机、看了mesh之后的心动。

编译器

chibin 直接放弃,龙哥不想搞,yezhe无力。我就算了。

无人机比赛

我持续到底吧。

GeekPie2020谜题项目-设计稿

须知

  1. 每个Stage最多包含5个页面;你需要描述每个网页的大致内容、包含的文件、上下级页面(无则写无);5个页面可以是并行的

  2. 每个Stage需要有2~5种已知通关方案,需要给出“过剩”的线索

  3. 如果使用了头脑风暴中的idea,请在[Meeting0]作相应的记号

  4. 一定要确保谜题逻辑上连贯; 请充分考虑开发实现难度。

  5. 请务必将此链接以及有关内容保密

Stage1 [Author: 张启煊|邱龙田]

Ø 页面

序号页面名称上级页面下级页面页面内容描述/包含文件描述
1-1宣传图/加入游戏wps8fjxMy
1-2加入游戏宣传图Stage2开启按钮恭喜你通过宣传图中的线索顺利来到了活动的注册页面;与此同时,我们也需要简单检验一下您的身份。1. 请为自己取一个ID[输入框]2. 我校信息学院、生命学院、物质学院的主题色分别是?[3*7=21种颜色选3]3. 我校的校训是?[输入框][提交]return[0]: 答案错误return[1-输入苟…]: 说错话是要负责任的呀!答案错误return[2-通过]: 恭喜你注册成功!Stage2的网址就在你的答案中
1-3Stage2开启按钮加入游戏Stage21.恭喜你达到了Stage1的终点!请给自己取一个ID让大家知晓…2. 一个按钮,点击则提示“不是时候”,除非他把系统时间设定为宣传图那一分钟
1-4
1-5

Ø 破解方案1:把时钟与鸽子嘴重合得到网址前缀;正确答出四道题,其中第四道题包含“不”“无”“没”或者什么都不写;根据颜色号码找到新的网址;将系统时间设置为宣传图那一分钟;开启Stage2

Stage2 [Author: 叶者|张龙文]

Ø 页面

序号页面名称上级页面下级页面页面内容描述/包含文件描述
2-1
2-2
2-3
2-4
2-5

Ø 破解方案1:

Ø 破解方案2: geekpie{Bridges_are_sacks._Is_there_anything_wrong_with_speaking_like_this!_Now,_tell_me.}

Ø 破解方案3: geekpie{It_would_be_nice_if_someone_like_me_disappeared.}

破解方案4: geekpie{symb0ls_ar3_jus7_symbo1s}

压缩包密码:3342613097+某管理员

Ø 破解方案5: geekpie{what_a_cruel_person} geekpie{Guomie_Nasai}

以下为Stage2草稿.jpg

题目顺序:

(1) -> (2) -> (5) -> (3) -> (4)

​ ----->-----/

(1) 3个(或多个)选择题 某一个的题干包括跳过两个字 只有点击跳过可以通关

破解方法 1 xjb点 2 查看网页源代码 [是不是太简单了]是的

(2) 拼图 文件名为也为flag分段 按拼图顺序 仿照https://github.com/ustclug/hackergame2018-writeups/tree/master/official/card 用上科大校徽做背景 题解记得credit

破解方法 1 拼图后输入图片内内容 2 拼图排序后输入文件名拼接内容

(3) 找不同 多个像素点的颜色区别 答案是一系列坐标(大概3~5个)图片为bmp

(4) zip file password: geekpie某管理员的qq号+昵称 答案"{}+某管理员".format(qq号)

(5) RGB to UTF-8 2份线索 图片使用bmp防止压缩损耗:

线索1:UTF-8解密后信息 -> 跳一关

线索2:略微不同颜色的文字描边 破解方式:ps 选择颜色 如下

wps93OTEN
wpsZtzCbV

Stage3 [Author: 井皓天|杨易为]

主页面:Stage 3 - 腾讯文档

Ø 页面

序号页面名称上级页面下级页面页面内容描述/包含文件描述
3-1失踪的快递/XXXXXX YYYYYYYY 53Z2湖北省武汉市某同学家。从得到一个快递号,没来的去取,上面的身份证号已经模糊,需要猜出才能取得快递。快递编号 → 投递城市 → 身份证前六位 → X某个 QQ 群里的「管理员」→ 生日 or 百度第一次删除Google是什么时候 → Y校验码可以枚举出 Z 的几个可能,要加上性别才能唯一确定(可以暴力)之后配合某种载体(快递订单图片,其上的时间转 UNIX 时间戳之后会被用到)引导到一个域名为 身份证号.xxxxxx.onion 的网站(自备洋葱)
3-2快递的秘密失踪的快递救人的药/门牌号里面有合同,指向另一个洋葱网站有个教务系统网站(每隔5s 换一次地址,指向救人的药/门牌号)下载得到一个ppt(离散题目)文件* 解压 pptx 可以跳到 3
3-3救人的药ACTG 转化学式转药的名称(瑞德西韦),还需要输入快递订单的时间(UNIX时间戳)
3-4罪魁祸首
3-5门牌号ACTG(维吉尼亚密码)转上科大门牌号+几点钟方向,在上科大地图中找到关键位置

/------->----\

(1)-> (2) -> (5) -> (3) -> (4)

​ ------------->----------/

以下是stage3的草稿

背景:湖北省武汉市某同学家

从得到一个快递号,没来的去取,上面的身份证号已经模糊,需要猜出才能取得快递。

给出一个身份证号

XXXXXX YYYYYYYY 53Z2

快递编号 → 投递城市 → 身份证前六位 → X

某个 QQ 群里的「管理员」→ 生日 or

百度第一次认识Google是什么时候 → Y

校验码可以枚举出 Z 的几个可能,要加上性别才能唯一确定(可以暴力)

之后配合某种载体(快递订单图片,其上的时间转 UNIX 时间戳之后会被用到)

引导到一个域名为 身份证号.xxxxxx.onion 的网站(自备洋葱)

百度地图上科大街景 https://j.map.baidu.com/85/05w

可以用的ACTG训练能用的药。

Shanghaitech GeekPie 2020 WarmUP CTF Game - G20G Stage 3 Doc

Stage 3

3-1 失踪的快递

湖北省武汉市某同学家。从得到一个快递号,没来的去取,上面的身份证号已经模糊,需要猜出才能取得快递。

快递编号 3102511818424 → X

百度第一次认识 Google 是什么时候 → Y

身份证号

TL;DR - 目前的选择是 42011620060523627X。

前六位

前六位为行政区域编码。

湖北武汉黄陂区

考虑到能自己少做一些就少做一些,目前看到快递单号 3102511818424 还可以:

3102511818424湖北武汉黄陂区420116

这个单号的优点是 直接用百度搜索 会提示“:( 抱歉,查询出错,请重试或点击快递公司官网地址进行查询。”,但实际上到韵达快递官网是能找到的。

日期部分

需要一个带有 年 月 日 的 日期。

百度第一次认识 Google 是什么时候
百度搜 Google最早结果 2001年6月30日20010631
百度第一次删除 Google 是什么时候

可能需要一些线索提示要去“百度百科”找答案

Google 词条编辑历史最早删除 2006-05-2320060523
其他方法

举例:

  • 询问黑板报得到答案

最后四位

数字都给出来,顺序要你自己猜。选择校验码为 X,则可以使用 627X。

3-2 快递的秘密

Onion 域名

blgpxymqjoo35curmvsldxejuq5vsyf5orutrfp25bdan223t62a3vad.onion/42011620010631726X 跳转到一个教务系统的登陆界面。需要输入自己的邮箱和与之匹配的用户名登陆。之后跳转到

查看课件

ppt隐写

改ppt为zip解压出藏在最后的网址和线索

3-3 救人的药

ppt给出线索跳转到jupyter hub 的登陆界面

网址 victoryang00.xyz:5006 用户名 jupyter1-6 密码 g20

每运行一步能得到一部分分数

最后在前端输入所有可能的总共化合物的碳原子比氢原子的比值的最小值(保留13位有效数字)得到分数

此步骤有mutex 锁(显卡只有一块,而训练会allocate全部显存),即一组在运行时,另一组无法进行,也是拉大时间差距的一关

答案是 0.8235294117647

3-4 电话号码

承接上回给出的线索,以下线索按时间顺序(每10分钟)给出,要求得到电话号码

位置提示1

https://j.map.baidu.com/f3/fGw 最接近球状物体的地方

位置提示2

https://j.map.baidu.com/a2/C_w 和上一张图同时存在的地方

位置提示3

上海微小卫星工程中心

答案是 (021)50735001

HPL result after mending the OpenIB

================================================================================
HPLinpack 2.1  --  High-Performance Linpack benchmark  --   October 26, 2012
Written by A. Petitet and R. Clint Whaley,  Innovative Computing Laboratory, UTK
Modified by Piotr Luszczek, Innovative Computing Laboratory, UTK
Modified by Julien Langou, University of Colorado Denver
================================================================================

An explanation of the input/output parameters follows:
T/V    : Wall time / encoded variant.
N      : The order of the coefficient matrix A.
NB     : The partitioning blocking factor.
P      : The number of process rows.
Q      : The number of process columns.
Time   : Time in seconds to solve the linear system.
Gflops : Rate of execution for solving the linear system.

The following parameter values will be used:

N      :  178176   178176   178176
NB     :     384
PMAP   : Row-major process mapping
P      :       2
Q      :       4
PFACT  :    Left
NBMIN  :       2
NDIV   :       2
RFACT  :    Left
BCAST  :   2ring
DEPTH  :       0
SWAP   : Spread-roll (long)
L1     : no-transposed form
U      : transposed form
EQUIL  : yes
ALIGN  : 8 double precision words

--------------------------------------------------------------------------------

- The matrix A is randomly generated for each test.
- The following scaled residual check will be computed:
      ||Ax-b||_oo / ( eps * ( || x ||_oo * || A ||_oo + || b ||_oo ) * N )
- The relative machine precision (eps) is taken to be               1.110223e-16
- Computational tests pass if scaled residuals are less than                16.0

trsm_cutoff from environment variable 9000000
gpu_dgemm_split from environment variable 1.000
check_cpu_dgemm_perf from environment variable 0

        ******** TESTING SYSTEM PARAMETERS ********
        PARAM   [UNITS]         MIN     MAX     AVG
        -----   -------         ---     ---     ---
CPU :
        CPU_BW  [GB/s ]         17.0    17.5    17.3
        CPU_FP  [GFLPS]
                NB =   32         30      51      43
                NB =   64         69      74      71
                NB =  128         78     101      94
                NB =  256         98     116     112
                NB =  512        114     125     122
PCIE (NVLINK on IBM) :
        H2D_BW  [GB/s ]         10.9    11.0    10.9
        D2H_BW  [GB/s ]         12.0    12.3    12.2
        BID_BW  [GB/s ]         16.8    17.5    17.1
CPU_BW concurrent with BID_BW :
        CPU_BW  [GB/s ]         9.3     10.3    9.9
        BID_BW  [GB/s ]         10.4    10.9    10.6
GPU :
        GPU_BW  [GB/s ]         768     774     772
        GPU_FP  [GFLPS]
                NB =  128       5456    5497    5479
                NB =  256       6312    6346    6335
                NB =  384       6635    6785    6729
                NB =  512       6146    6566    6385
                NB =  640       6255    6765    6529
                NB =  768       6178    6677    6463
                NB =  896       6296    6887    6601
                NB = 1024       6318    6760    6497
NET :
        PROC COL NET_BW [MB/s ]
                     8 B           9      10      10
                    64 B          71      82      76
                   512 B         374     425     399
                     4 KB       1660    1738    1698
                    32 KB       2562    2603    2578
                   256 KB       2551    2566    2558
                  2048 KB       2521    2686    2564
                 16384 KB       2543    2549    2545
        NET_LAT [ us  ]         2.7     3.3     3.0

        PROC ROW NET_BW [MB/s ]
                     8 B          26      29      27
                    64 B         176     185     181
                   512 B         810     867     839
                     4 KB       3487    3547    3517
                    32 KB       4715    4938    4827
                   256 KB       10310   10896   10603
                  2048 KB       3793    3812    3802
                 16384 KB       3643    3754    3699
        NET_LAT [ us  ]         0.6     0.9     0.7

displaying Prog:%complete, N:columns, Time:seconds
iGF:instantaneous GF, GF:avg GF, GF_per: process GF


Per-Process Host Memory Estimate: 32.16 GB (MAX) 32.16 GB (MIN)

PCOL: 0 GPU_COLS: 44545 CPU_COLS: 0
PCOL: 1 GPU_COLS: 44545 CPU_COLS: 0
PCOL: 3 GPU_COLS: 44545 CPU_COLS: 0
PCOL: 2 GPU_COLS: 44545 CPU_COLS: 0
2020-02-16 03:09:22.935
 Prog= 1.93%    N_left= 177024  Time= 2.05      Time_left= 104.25       iGF= 35476.18   GF= 35476.18    iGF_per= 4434.52        GF_per= 4434.52
 Prog= 3.20%    N_left= 176256  Time= 3.03      Time_left= 91.75        iGF= 48776.89   GF= 39787.78    iGF_per= 6097.11        GF_per= 4973.47
 Prog= 4.46%    N_left= 175488  Time= 4.01      Time_left= 86.02        iGF= 48350.88   GF= 41884.18    iGF_per= 6043.86        GF_per= 5235.52
 Prog= 6.33%    N_left= 174336  Time= 5.52      Time_left= 81.68        iGF= 46884.70   GF= 43246.86    iGF_per= 5860.59        GF_per= 5405.86
 Prog= 7.56%    N_left= 173568  Time= 6.45      Time_left= 78.89        iGF= 49726.67   GF= 44185.60    iGF_per= 6215.83        GF_per= 5523.20
 Prog= 8.78%    N_left= 172800  Time= 7.47      Time_left= 77.63        iGF= 45087.65   GF= 44308.93    iGF_per= 5635.96        GF_per= 5538.62
 Prog= 10.59%   N_left= 171648  Time= 8.94      Time_left= 75.41        iGF= 46760.45   GF= 44709.92    iGF_per= 5845.06        GF_per= 5588.74
 Prog= 11.79%   N_left= 170880  Time= 9.85      Time_left= 73.67        iGF= 49499.57   GF= 45152.71    iGF_per= 6187.45        GF_per= 5644.09
 Prog= 12.97%   N_left= 170112  Time= 10.84     Time_left= 72.74        iGF= 44732.85   GF= 45114.06    iGF_per= 5591.61        GF_per= 5639.26
 Prog= 14.73%   N_left= 168960  Time= 12.20     Time_left= 70.60        iGF= 48990.39   GF= 45543.73    iGF_per= 6123.80        GF_per= 5692.97
 Prog= 15.89%   N_left= 168192  Time= 13.16     Time_left= 69.67        iGF= 45314.51   GF= 45526.95    iGF_per= 5664.31        GF_per= 5690.87
 Prog= 17.03%   N_left= 167424  Time= 14.06     Time_left= 68.48        iGF= 48046.22   GF= 45688.27    iGF_per= 6005.78        GF_per= 5711.03
 Prog= 18.73%   N_left= 166272  Time= 15.46     Time_left= 67.07        iGF= 45757.55   GF= 45694.55    iGF_per= 5719.69        GF_per= 5711.82
 Prog= 19.85%   N_left= 165504  Time= 16.43     Time_left= 66.33        iGF= 43464.21   GF= 45562.56    iGF_per= 5433.03        GF_per= 5695.32
 Prog= 20.97%   N_left= 164736  Time= 17.28     Time_left= 65.14        iGF= 49538.96   GF= 45757.11    iGF_per= 6192.37        GF_per= 5719.64
 Prog= 22.61%   N_left= 163584  Time= 18.67     Time_left= 63.88        iGF= 44748.96   GF= 45682.17    iGF_per= 5593.62        GF_per= 5710.27
 Prog= 23.70%   N_left= 162816  Time= 19.52     Time_left= 62.86        iGF= 47723.89   GF= 45771.82    iGF_per= 5965.49        GF_per= 5721.48
 Prog= 24.77%   N_left= 162048  Time= 20.46     Time_left= 62.13        iGF= 43350.60   GF= 45661.18    iGF_per= 5418.83        GF_per= 5707.65
 Prog= 26.36%   N_left= 160896  Time= 21.82     Time_left= 60.94        iGF= 44130.63   GF= 45565.69    iGF_per= 5516.33        GF_per= 5695.71
 Prog= 27.41%   N_left= 160128  Time= 22.62     Time_left= 59.90        iGF= 49145.98   GF= 45693.12    iGF_per= 6143.25        GF_per= 5711.64
 Prog= 28.45%   N_left= 159360  Time= 23.58     Time_left= 59.30        iGF= 40933.20   GF= 45499.84    iGF_per= 5116.65        GF_per= 5687.48
 Prog= 29.99%   N_left= 158208  Time= 24.78     Time_left= 57.83        iGF= 48574.61   GF= 45648.24    iGF_per= 6071.83        GF_per= 5706.03
 Prog= 31.01%   N_left= 157440  Time= 25.68     Time_left= 57.14        iGF= 42424.31   GF= 45535.02    iGF_per= 5303.04        GF_per= 5691.88
 Prog= 32.01%   N_left= 156672  Time= 26.47     Time_left= 56.22        iGF= 47689.89   GF= 45599.69    iGF_per= 5961.24        GF_per= 5699.96
 Prog= 33.50%   N_left= 155520  Time= 27.81     Time_left= 55.20        iGF= 42112.81   GF= 45432.53    iGF_per= 5264.10        GF_per= 5679.07
 Prog= 34.48%   N_left= 154752  Time= 28.66     Time_left= 54.45        iGF= 43461.57   GF= 45374.03    iGF_per= 5432.70        GF_per= 5671.75
 Prog= 35.45%   N_left= 153984  Time= 29.40     Time_left= 53.53        iGF= 49076.85   GF= 45467.95    iGF_per= 6134.61        GF_per= 5683.49
 Prog= 36.41%   N_left= 153216  Time= 30.33     Time_left= 52.97        iGF= 38942.69   GF= 45267.77    iGF_per= 4867.84        GF_per= 5658.47
 Prog= 37.84%   N_left= 152064  Time= 31.44     Time_left= 51.65        iGF= 48678.40   GF= 45387.41    iGF_per= 6084.80        GF_per= 5673.43
 Prog= 38.77%   N_left= 151296  Time= 32.32     Time_left= 51.03        iGF= 40203.99   GF= 45246.42    iGF_per= 5025.50        GF_per= 5655.80
 Prog= 39.70%   N_left= 150528  Time= 33.05     Time_left= 50.20        iGF= 47611.40   GF= 45299.00    iGF_per= 5951.43        GF_per= 5662.37
 Prog= 41.08%   N_left= 149376  Time= 34.29     Time_left= 49.19        iGF= 41721.17   GF= 45169.44    iGF_per= 5215.15        GF_per= 5646.18
 Prog= 41.98%   N_left= 148608  Time= 35.17     Time_left= 48.61        iGF= 38661.58   GF= 45006.27    iGF_per= 4832.70        GF_per= 5625.78
 Prog= 42.87%   N_left= 147840  Time= 35.86     Time_left= 47.78        iGF= 48952.92   GF= 45082.13    iGF_per= 6119.11        GF_per= 5635.27
 Prog= 44.20%   N_left= 146688  Time= 37.07     Time_left= 46.80        iGF= 41375.08   GF= 44961.37    iGF_per= 5171.89        GF_per= 5620.17
 Prog= 45.07%   N_left= 145920  Time= 37.79     Time_left= 46.06        iGF= 45648.36   GF= 44974.46    iGF_per= 5706.04        GF_per= 5621.81
 Prog= 45.93%   N_left= 145152  Time= 38.60     Time_left= 45.44        iGF= 40090.04   GF= 44871.78    iGF_per= 5011.25        GF_per= 5608.97
 Prog= 47.21%   N_left= 144000  Time= 39.82     Time_left= 44.52        iGF= 39552.58   GF= 44709.14    iGF_per= 4944.07        GF_per= 5588.64
 Prog= 48.05%   N_left= 143232  Time= 40.47     Time_left= 43.75        iGF= 49061.56   GF= 44778.59    iGF_per= 6132.69        GF_per= 5597.32
 Prog= 48.88%   N_left= 142464  Time= 41.31     Time_left= 43.20        iGF= 37191.35   GF= 44623.80    iGF_per= 4648.92        GF_per= 5577.98
 Prog= 50.11%   N_left= 141312  Time= 42.27     Time_left= 42.08        iGF= 48488.80   GF= 44711.28    iGF_per= 6061.10        GF_per= 5588.91
 Prog= 50.92%   N_left= 140544  Time= 43.06     Time_left= 41.50        iGF= 38233.96   GF= 44591.27    iGF_per= 4779.24        GF_per= 5573.91
 Prog= 51.72%   N_left= 139776  Time= 43.70     Time_left= 40.79        iGF= 47352.86   GF= 44631.53    iGF_per= 5919.11        GF_per= 5578.94
 Prog= 52.91%   N_left= 138624  Time= 44.84     Time_left= 39.92        iGF= 39078.20   GF= 44490.06    iGF_per= 4884.77        GF_per= 5561.26
 Prog= 53.68%   N_left= 137856  Time= 45.67     Time_left= 39.40        iGF= 35469.32   GF= 44326.60    iGF_per= 4433.67        GF_per= 5540.82
 Prog= 54.45%   N_left= 137088  Time= 46.27     Time_left= 38.70        iGF= 48835.00   GF= 44384.52    iGF_per= 6104.37        GF_per= 5548.07
 Prog= 55.59%   N_left= 135936  Time= 47.38     Time_left= 37.85        iGF= 38524.68   GF= 44246.68    iGF_per= 4815.59        GF_per= 5530.84
 Prog= 56.34%   N_left= 135168  Time= 47.98     Time_left= 37.18        iGF= 46924.35   GF= 44280.25    iGF_per= 5865.54        GF_per= 5535.03
 Prog= 57.08%   N_left= 134400  Time= 48.78     Time_left= 36.68        iGF= 34793.40   GF= 44124.28    iGF_per= 4349.17        GF_per= 5515.54
 Prog= 58.18%   N_left= 133248  Time= 49.88     Time_left= 35.86        iGF= 37458.72   GF= 43977.09    iGF_per= 4682.34        GF_per= 5497.14
 Prog= 58.89%   N_left= 132480  Time= 50.45     Time_left= 35.21        iGF= 48334.19   GF= 44025.55    iGF_per= 6041.77        GF_per= 5503.19
 Prog= 59.60%   N_left= 131712  Time= 51.24     Time_left= 34.73        iGF= 33628.72   GF= 43863.84    iGF_per= 4203.59        GF_per= 5482.98
 Prog= 60.31%   N_left= 130944  Time= 51.82     Time_left= 34.11        iGF= 45809.84   GF= 43885.56    iGF_per= 5726.23        GF_per= 5485.69
 Prog= 61.35%   N_left= 129792  Time= 52.86     Time_left= 33.31        iGF= 37783.38   GF= 43765.91    iGF_per= 4722.92        GF_per= 5470.74
 Prog= 62.03%   N_left= 129024  Time= 53.42     Time_left= 32.71        iGF= 45345.68   GF= 43782.68    iGF_per= 5668.21        GF_per= 5472.84
 Prog= 62.70%   N_left= 128256  Time= 54.15     Time_left= 32.21        iGF= 34954.61   GF= 43664.13    iGF_per= 4369.33        GF_per= 5458.02
 Prog= 63.70%   N_left= 127104  Time= 55.82     Time_left= 31.81        iGF= 22502.08   GF= 43031.33    iGF_per= 2812.76        GF_per= 5378.92
 Prog= 64.35%   N_left= 126336  Time= 56.67     Time_left= 31.39        iGF= 29211.49   GF= 42825.40    iGF_per= 3651.44        GF_per= 5353.18
 Prog= 65.00%   N_left= 125568  Time= 57.40     Time_left= 30.91        iGF= 33256.17   GF= 42703.25    iGF_per= 4157.02        GF_per= 5337.91
 Prog= 65.95%   N_left= 124416  Time= 58.21     Time_left= 30.05        iGF= 44190.67   GF= 42724.06    iGF_per= 5523.83        GF_per= 5340.51
 Prog= 66.58%   N_left= 123648  Time= 59.04     Time_left= 29.63        iGF= 28645.97   GF= 42527.36    iGF_per= 3580.75        GF_per= 5315.92
 Prog= 67.20%   N_left= 122880  Time= 59.54     Time_left= 29.07        iGF= 45998.47   GF= 42556.94    iGF_per= 5749.81        GF_per= 5319.62
 Prog= 68.11%   N_left= 121728  Time= 60.42     Time_left= 28.29        iGF= 39488.82   GF= 42512.62    iGF_per= 4936.10        GF_per= 5314.08
 Prog= 68.71%   N_left= 120960  Time= 61.07     Time_left= 27.81        iGF= 34586.02   GF= 42427.74    iGF_per= 4323.25        GF_per= 5303.47
 Prog= 69.30%   N_left= 120192  Time= 61.61     Time_left= 27.29        iGF= 41400.68   GF= 42418.75    iGF_per= 5175.09        GF_per= 5302.34
 Prog= 70.18%   N_left= 119040  Time= 62.86     Time_left= 26.71        iGF= 26402.30   GF= 42100.61    iGF_per= 3300.29        GF_per= 5262.58
 Prog= 70.75%   N_left= 118272  Time= 63.34     Time_left= 26.18        iGF= 45075.96   GF= 42123.15    iGF_per= 5634.50        GF_per= 5265.39
 Prog= 71.32%   N_left= 117504  Time= 64.14     Time_left= 25.80        iGF= 26608.65   GF= 41929.10    iGF_per= 3326.08        GF_per= 5241.14
 Prog= 72.15%   N_left= 116352  Time= 64.94     Time_left= 25.06        iGF= 39254.82   GF= 41896.06    iGF_per= 4906.85        GF_per= 5237.01
 Prog= 72.70%   N_left= 115584  Time= 65.45     Time_left= 24.57        iGF= 41171.51   GF= 41890.50    iGF_per= 5146.44        GF_per= 5236.31
 Prog= 73.24%   N_left= 114816  Time= 66.06     Time_left= 24.13        iGF= 33393.87   GF= 41811.98    iGF_per= 4174.23        GF_per= 5226.50
 Prog= 74.04%   N_left= 113664  Time= 66.79     Time_left= 23.42        iGF= 41230.05   GF= 41805.63    iGF_per= 5153.76        GF_per= 5225.70
 Prog= 74.56%   N_left= 112896  Time= 67.39     Time_left= 22.99        iGF= 32345.48   GF= 41720.09    iGF_per= 4043.19        GF_per= 5215.01
 Prog= 75.08%   N_left= 112128  Time= 67.91     Time_left= 22.54        iGF= 37707.11   GF= 41689.62    iGF_per= 4713.39        GF_per= 5211.20
 Prog= 75.84%   N_left= 110976  Time= 68.77     Time_left= 21.91        iGF= 33207.24   GF= 41583.13    iGF_per= 4150.90        GF_per= 5197.89
 Prog= 76.34%   N_left= 110208  Time= 69.40     Time_left= 21.51        iGF= 30057.75   GF= 41479.33    iGF_per= 3757.22        GF_per= 5184.92
 Prog= 76.83%   N_left= 109440  Time= 69.84     Time_left= 21.06        iGF= 42264.53   GF= 41484.26    iGF_per= 5283.07        GF_per= 5185.53
 Prog= 77.31%   N_left= 108672  Time= 71.08     Time_left= 20.86        iGF= 14652.32   GF= 41013.65    iGF_per= 1831.54        GF_per= 5126.71
 Prog= 78.03%   N_left= 107520  Time= 71.99     Time_left= 20.27        iGF= 29812.22   GF= 40873.13    iGF_per= 3726.53        GF_per= 5109.14
 Prog= 78.49%   N_left= 106752  Time= 72.71     Time_left= 19.92        iGF= 24299.69   GF= 40707.76    iGF_per= 3037.46        GF_per= 5088.47
 Prog= 78.95%   N_left= 105984  Time= 73.13     Time_left= 19.49        iGF= 41940.69   GF= 40714.74    iGF_per= 5242.59        GF_per= 5089.34
 Prog= 79.63%   N_left= 104832  Time= 73.95     Time_left= 18.91        iGF= 31090.48   GF= 40607.58    iGF_per= 3886.31        GF_per= 5075.95
 Prog= 80.08%   N_left= 104064  Time= 74.53     Time_left= 18.54        iGF= 28726.10   GF= 40514.59    iGF_per= 3590.76        GF_per= 5064.32
 Prog= 80.51%   N_left= 103296  Time= 74.98     Time_left= 18.15        iGF= 37150.07   GF= 40494.65    iGF_per= 4643.76        GF_per= 5061.83
 Prog= 81.16%   N_left= 102144  Time= 75.72     Time_left= 17.58        iGF= 32584.68   GF= 40416.72    iGF_per= 4073.08        GF_per= 5052.09
 Prog= 81.58%   N_left= 101376  Time= 76.20     Time_left= 17.20        iGF= 33444.77   GF= 40373.20    iGF_per= 4180.60        GF_per= 5046.65
 Prog= 82.00%   N_left= 100608  Time= 77.02     Time_left= 16.91        iGF= 19037.34   GF= 40145.25    iGF_per= 2379.67        GF_per= 5018.16
 Prog= 82.61%   N_left= 99456   Time= 77.77     Time_left= 16.37        iGF= 31036.06   GF= 40058.23    iGF_per= 3879.51        GF_per= 5007.28
 Prog= 83.01%   N_left= 98688   Time= 78.28     Time_left= 16.02        iGF= 29557.06   GF= 39989.80    iGF_per= 3694.63        GF_per= 4998.73
 Prog= 83.40%   N_left= 97920   Time= 78.75     Time_left= 15.67        iGF= 31521.92   GF= 39939.16    iGF_per= 3940.24        GF_per= 4992.40
 Prog= 83.98%   N_left= 96768   Time= 79.38     Time_left= 15.14        iGF= 34413.02   GF= 39895.00    iGF_per= 4301.63        GF_per= 4986.87
 Prog= 84.36%   N_left= 96000   Time= 79.89     Time_left= 14.81        iGF= 27780.50   GF= 39817.11    iGF_per= 3472.56        GF_per= 4977.14
 Prog= 84.73%   N_left= 95232   Time= 80.34     Time_left= 14.48        iGF= 31196.37   GF= 39768.82    iGF_per= 3899.55        GF_per= 4971.10
 Prog= 85.28%   N_left= 94080   Time= 81.14     Time_left= 14.01        iGF= 25847.14   GF= 39631.79    iGF_per= 3230.89        GF_per= 4953.97
 Prog= 85.64%   N_left= 93312   Time= 81.75     Time_left= 13.71        iGF= 22376.33   GF= 39504.58    iGF_per= 2797.04        GF_per= 4938.07
 Prog= 85.99%   N_left= 92544   Time= 82.14     Time_left= 13.38        iGF= 33941.78   GF= 39478.11    iGF_per= 4242.72        GF_per= 4934.76
 Prog= 86.50%   N_left= 91392   Time= 82.88     Time_left= 12.93        iGF= 26158.93   GF= 39358.40    iGF_per= 3269.87        GF_per= 4919.80
 Prog= 86.84%   N_left= 90624   Time= 83.22     Time_left= 12.61        iGF= 37628.00   GF= 39351.37    iGF_per= 4703.50        GF_per= 4918.92
 Prog= 87.17%   N_left= 89856   Time= 83.72     Time_left= 12.32        iGF= 24988.33   GF= 39265.49    iGF_per= 3123.54        GF_per= 4908.19
 Prog= 88.60%   N_left= 86400   Time= 85.50     Time_left= 11.00        iGF= 30110.08   GF= 39074.56    iGF_per= 3763.76        GF_per= 4884.32
 Prog= 90.05%   N_left= 82560   Time= 88.07     Time_left= 9.73 iGF= 21336.49   GF= 38557.09    iGF_per= 2667.06        GF_per= 4819.64
 Prog= 91.25%   N_left= 79104   Time= 90.30     Time_left= 8.66 iGF= 20259.09   GF= 38105.32    iGF_per= 2532.39        GF_per= 4763.17
 Prog= 92.35%   N_left= 75648   Time= 92.03     Time_left= 7.63 iGF= 23894.57   GF= 37837.86    iGF_per= 2986.82        GF_per= 4729.73
 Prog= 93.45%   N_left= 71808   Time= 94.32     Time_left= 6.61 iGF= 18238.09   GF= 37362.12    iGF_per= 2279.76        GF_per= 4670.26
 Prog= 94.35%   N_left= 68352   Time= 96.12     Time_left= 5.75 iGF= 18874.93   GF= 37016.15    iGF_per= 2359.37        GF_per= 4627.02
 Prog= 95.17%   N_left= 64896   Time= 97.55     Time_left= 4.95 iGF= 21433.84   GF= 36787.46    iGF_per= 2679.23        GF_per= 4598.43
 Prog= 95.90%   N_left= 61440   Time= 99.00     Time_left= 4.23 iGF= 19137.51   GF= 36530.45    iGF_per= 2392.19        GF_per= 4566.31
 Prog= 96.62%   N_left= 57600   Time= 100.51    Time_left= 3.51 iGF= 18001.20   GF= 36251.72    iGF_per= 2250.15        GF_per= 4531.46
 Prog= 97.19%   N_left= 54144   Time= 101.67    Time_left= 2.94 iGF= 18516.54   GF= 36048.39    iGF_per= 2314.57        GF_per= 4506.05
 Prog= 99.14%   N_left= 36480   Time= 106.77    Time_left= 0.92 iGF= 14414.00   GF= 35015.81    iGF_per= 1801.75        GF_per= 4376.98
 Prog= 99.89%   N_left= 18432   Time= 110.04    Time_left= 0.12 iGF=  8624.06   GF= 34231.83    iGF_per= 1078.01        GF_per= 4278.98
 Prog= 100.00%  N_left= 768     Time= 111.76    Time_left= 0.00 iGF=  2427.21   GF= 33742.39    iGF_per= 303.40         GF_per= 4217.80
2020-02-16 03:11:15.757
================================================================================
T/V                N    NB     P     Q               Time                 Gflops
--------------------------------------------------------------------------------
WR02L2L2      178176   384     2     4             112.82              3.342e+04
--------------------------------------------------------------------------------
||Ax-b||_oo/(eps*(||A||_oo*||x||_oo+||b||_oo)*N)=        0.0031046 ...... PASSED