0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-25 16:22:35 +01:00
Commit graph

5025 commits

Author SHA1 Message Date
Jason Volk
2d68d69b36 ircd::string_view: Attribute noreturn on insert() stub under proper conditions. 2022-07-20 18:32:38 -07:00
Jason Volk
b271007fd2 ircd::util: Fix unsafe instance_list emplace; assert for allocator state. 2022-07-20 18:32:38 -07:00
Jason Volk
5d71d848a7 ircd::util: Fix undefined-var-template linkage related warning. 2022-07-20 12:31:49 -07:00
Jason Volk
741c211848 configure: Add conditional flags for forced pch w/ clang. 2022-07-20 09:56:22 -07:00
Jason Volk
27f1ecd6cd configure: Hoist some flags out of include/ircd/Makefile. 2022-07-20 09:56:22 -07:00
Jason Volk
3a5f7e0aac ircd::resource: Implement more complex path routing. 2022-07-20 09:56:22 -07:00
Jason Volk
432f38cd06 ircd: Add tokens_split() tool w/ skip feature. 2022-07-19 14:26:23 -07:00
Jason Volk
ca66882b6e ircd::util: Additional pubsetbuf() convenience; inline linkages. 2022-07-19 14:26:23 -07:00
Jason Volk
b2d451b74d ircd: Add branchless optimistic assertion instrument --with-assert=opt 2022-07-18 16:58:02 -07:00
Jason Volk
e4d517415b ircd:Ⓜ️:acquire: Add conf items to default some opts; rename and raise submit max. 2022-07-18 16:58:02 -07:00
Jason Volk
4e29b2429c ircd::string_view: Add noexcept substr(); optimize codegen for split()/rsplit(). 2022-07-18 16:58:02 -07:00
Jason Volk
93a7575352 ircd:Ⓜ️:resource: Abstract request::version to ircd::request::agent. 2022-07-18 16:58:02 -07:00
Jason Volk
24cf3569a9 ircd::resource: Deinline request aggregate ctor. 2022-07-18 16:58:02 -07:00
Jason Volk
378b9b3acf ircd::resource: Replace resources map with instance_map. 2022-07-18 16:58:02 -07:00
Jason Volk
6a961e5b38 ircd::util: Add instance_map. 2022-07-18 16:58:02 -07:00
Jason Volk
80ee906a8e ircd::util: Use memfun template for proper universal forwarding; inline linkages. 2022-07-18 16:58:02 -07:00
Jason Volk
a563c7b075 ircd:Ⓜ️:device: Add missing property to tuple. 2022-07-13 22:48:14 -07:00
Jason Volk
0725db0431 ircd::json: Add prepend/append tools for arrays. 2022-07-13 22:48:14 -07:00
Jason Volk
084bef0579 ircd::db: Fix additional db::prefetcher shutdown. (related cd15c17499) 2022-07-13 22:48:14 -07:00
Jason Volk
994702b32f ircd:Ⓜ️:filter: Add overloads to match() w/ fetch from event_idx. 2022-07-13 22:48:14 -07:00
Jason Volk
e2e0b6294f ircd:Ⓜ️:filter: Remove noexcept due to supplied json parse. 2022-07-13 22:48:13 -07:00
Jason Volk
6cfd037ebd ircd::json::tuple: Complete constexpr codepaths for keys selections. 2022-07-13 13:56:53 -07:00
Jason Volk
fe8c11dc94 ircd::util: Add a constexpr bitset. 2022-07-13 13:56:53 -07:00
Jason Volk
d87eba3485 ircd::vector_view: Add constexpr constructions. 2022-07-12 22:36:50 -07:00
Jason Volk
ec55b9b30f ircd:Ⓜ️ Implement matrix-org/matrix-spec-proposals#3316 timestamp massaging. 2022-07-12 08:41:40 -07:00
Jason Volk
6ce5ab5b1d ircd::conf: Add environ() to interface; minor cleanup/reorg. 2022-07-11 12:53:25 -07:00
Jason Volk
3992af9388 ircd:Ⓜ️:acquire: Promote and improve some log messages for non-debug builds. 2022-07-10 15:48:05 -07:00
Jason Volk
11f878209f ircd:Ⓜ️:room::events: Comment on ctors; minor assertions. 2022-07-09 14:10:28 -07:00
Jason Volk
9788ce9863 ircd:Ⓜ️:acquire: Add accumulators for acquires and fetches. 2022-07-08 23:24:06 -07:00
Jason Volk
fe55c05f11 ircd::server: Remove problematic tag move assignment operator. 2022-07-08 15:21:47 -07:00
Jason Volk
09021ac28b ircd::exception: Move throwing errno+system_category out-of-line. 2022-07-08 11:39:45 -07:00
Jason Volk
6c7a978a60 ircd: Split stduse.h from stdinc.h. 2022-07-08 10:45:33 -07:00
Jason Volk
18b3b58709 ircd::net::acceptor: Add filter instance stub to listener. 2022-07-08 10:45:33 -07:00
Jason Volk
d3584274ac ircd::net::bpf: Add preliminary epbf support. 2022-07-08 10:45:33 -07:00
Jason Volk
11e75db293 ircd::net: Add filter attach/detach to socket option suite. 2022-07-07 16:47:55 -07:00
Jason Volk
c652e8172c ircd::buffer: Add explicit checked convenience type casts. 2022-07-07 16:47:55 -07:00
Jason Volk
edf0448243 ircd::buffer: Fix unconditional emission of inline variable in all units. (81b6c7b003) 2022-07-07 16:47:55 -07:00
Jason Volk
079e273355 ircd: Upgrade to std::filesystem from boost::filesystem. 2022-07-07 16:47:55 -07:00
Jason Volk
3451a989ac Add noexcept to various lambdas (gcc-12). 2022-07-07 16:47:55 -07:00
Jason Volk
4b61ea5387 ircd::spirit: Suppress -Wdangling-pointer in spirit::karma (gcc-12). 2022-07-05 13:01:58 -07:00
Jason Volk
03d6c32556 ircd::spirit: Fix inconsistent namespace visibilities. 2022-07-05 13:01:58 -07:00
Jason Volk
8ba5548a2e ircd::mods: Improve paths encapsulation; fix warning. (gcc-12) 2022-07-04 22:25:18 -07:00
Jason Volk
b5781c4fac ircd::buffer::fixed_buffer: Minor cleanup. 2022-07-04 22:25:18 -07:00
Jason Volk
46cae6f24b modules/m_room_member: Support knocking membership/auth_rules. 2022-07-04 22:25:18 -07:00
Jason Volk
95d6561ca1 ircd:Ⓜ️ Improve various options related. 2022-07-04 22:25:18 -07:00
Jason Volk
55d5b4d1a7 ircd:Ⓜ️:acquire: Fix fetching map critical emplacement. 2022-07-04 22:25:18 -07:00
Jason Volk
cc1028bd8f ircd::strl: Simplify strlcat; reuse strlcpy. (related f705df096d). 2022-07-03 15:04:02 -07:00
Jason Volk
e2d1e0c3b2 ircd:Ⓜ️:init::backfill: Split term() from fini() for blocking joins. 2022-07-02 21:39:11 -07:00
Jason Volk
6d79237301 ircd:Ⓜ️:error: Improve ctor codegen; non-template out-of-line; elide fmt. 2022-07-02 18:10:38 -07:00
Jason Volk
3a3da12051 ircd::server::request: Even more granular log facilities for request/response. 2022-07-02 18:10:38 -07:00
Jason Volk
94a6cd0d90 ircd::db: Simplify options wrappings; eliminate bitflags. 2022-07-02 12:42:09 -07:00
Jason Volk
6d2da3b4f1 ircd::gpt::task: Refactor generator interface to member functions. 2022-07-01 20:17:56 -07:00
Jason Volk
56d944f33e ircd::gpt::vocab: Add space-prefix convenience argument. 2022-07-01 17:36:45 -07:00
Jason Volk
08d39efca6 ircd::net: Fix double-jumps through interface glues; internalize symbols. 2022-07-01 13:36:04 -07:00
Jason Volk
c60fc0ccdd ircd::util: Improve bswap template codegen. 2022-07-01 12:08:06 -07:00
Jason Volk
81b6c7b003 ircd::buffer: Hoist null_buffer to inline variable; move buffers typedefs. 2022-07-01 09:49:44 -07:00
Jason Volk
d68f261036 ircd::gpt::pipe: Simplify init/fini w/ run::level::QUIT handler. 2022-06-30 16:04:31 -07:00
Jason Volk
fe199a8ed0 ircd:Ⓜ️:request: Support destination in X-Matrix authorization header. 2022-06-30 14:21:50 -07:00
Jason Volk
bd00907922 ircd::json: Allow literal null for array/object ::empty(); inline. 2022-06-30 14:21:50 -07:00
Jason Volk
f7e76cc9f1 ircd::json: Reuse ircd::util abstract tuple tools. 2022-06-30 14:21:50 -07:00
Jason Volk
642165a8bd ircd::util: Refactor tuple tools w/ if constexpr; remove until(). 2022-06-30 14:21:50 -07:00
Jason Volk
8b6679c5e9 ircd::ctx::dock: Eliminate inlined template complex; optimize linkages. 2022-06-29 18:20:46 -07:00
Jason Volk
29b0523dfc ircd::ios: Consolidate notification interface for now; add atexit related. 2022-06-29 18:20:46 -07:00
Jason Volk
f705df096d ircd: Eliminate lambda frame from strl suite ctors. 2022-06-29 14:59:57 -07:00
Jason Volk
5a4a395fc2 Add noexcept to various lambdas (gcc-11). 2022-06-29 14:42:42 -07:00
Jason Volk
b677eeb4b7 Allow various unsigned conversions.
construct: Fix comparison signedness warning.
2022-06-29 14:21:36 -07:00
Jason Volk
3e3483a2d1 Convert static member constexprs to non-reference type. 2022-06-28 17:42:49 -07:00
Jason Volk
dcbab1999a ircd::json::tuple: Remove until(); refactor templates w/ if constexpr. 2022-06-28 12:37:14 -07:00
Jason Volk
3a4b5aa819 ircd::json::tuple: Add prop() convenience; add has_key(); redundant noexcept. 2022-06-28 12:37:14 -07:00
Jason Volk
f6f5809658 ircd::json::tuple: Add inline linkages on keys templates. 2022-06-28 12:37:14 -07:00
Jason Volk
4062d273e9 ircd: Additional _constexpr_equal utils w/ size args. 2022-06-28 12:37:14 -07:00
Jason Volk
aff1b3436e ircd: Forward declare missing karma::rule; ensure visibility of public rules. 2022-06-28 12:37:14 -07:00
Jason Volk
c0b011d5c0 ircd:Ⓜ️ Propagate noexcept through closure templates. 2022-06-28 12:37:13 -07:00
Jason Volk
888f99e205 ircd::util: Propagate closure noexcept through template. 2022-06-28 12:37:13 -07:00
Jason Volk
45effc15d8 ircd::buffer: Fix warning from dependent type munge (gcc-11).
ircd:Ⓜ️:fetch: Fix non-trivial aggregate (gcc-10).

ircd::ctx::ole: Fix anonymous may be used uninitialized (gcc-11).
2022-06-28 12:37:13 -07:00
Jason Volk
7f2ac27cc5 ircd::util: Add is_pod wrapper; fix deprecation warning. 2022-06-28 12:37:13 -07:00
Jason Volk
bcbcfba6e8 ircd::json::property: Fix mistreatment of class template as universal reference. 2022-06-28 12:37:13 -07:00
Jason Volk
ffcb4de0e8 ircd:Ⓜ️🆔 Consistent static rules for now; missing name labels; typedefs. 2022-06-27 15:39:05 -07:00
Jason Volk
110610f774 ircd:Ⓜ️ Tweak symbol related linkflags for library.
Fix $EXTRA_ flags placement; improve Makefile formatting.
2022-06-24 21:31:05 -07:00
Jason Volk
d5c6314f1a ircd: Split info::versions into header/unit. 2022-06-23 10:50:48 -07:00
Jason Volk
61d558fc9d ircd: Define all IRCD_USE_ as integers for constexprs. 2022-06-23 09:36:44 -07:00
Jason Volk
830a5b9d2a ircd::mods::ldso: Improve interposition of exceptions for runtime behavior switching. 2022-06-22 11:04:18 -07:00
Jason Volk
f53764cd7f ircd: Add missing tuple; add concepts. (C++20) 2022-06-20 19:44:32 -07:00
Jason Volk
99f1740289 Fixes for gcc (gnu++20) (gcc-12). 2022-06-20 18:24:55 -07:00
Jason Volk
796058d8e9 ircd::db: Remove deprecated seqnum; related 58a346f18b. 2022-06-20 18:24:55 -07:00
Jason Volk
6784e87f5b ircd::magick: Fix evaluation of undefined macro on excluding builds. 2022-06-20 18:24:55 -07:00
Jason Volk
5a11c31d97 Revert "ircd: ISO C++ requires template on destructor names out-of-line." (gcc-11/12)
This reverts commit e3e3bd7b09.

Add -Wno-dtor-name to clang warning discovery section.
2022-06-20 17:26:39 -07:00
Jason Volk
9ffbd8be37 ircd:Ⓜ️:fed: Implement request-side for knock suite. 2022-06-19 20:27:13 -07:00
Jason Volk
da022616d9 ircd:Ⓜ️:fed: Implement request-side for MSC3030 w/ console cmd.
matrix-org/matrix-spec-proposals#3030
2022-06-19 20:27:13 -07:00
Jason Volk
3807a4d832 ircd:Ⓜ️:fed: Add hierarchy request w/ console cmd. 2022-06-19 20:27:13 -07:00
Jason Volk
e403c20cc6 ircd::fs::aio: Split max events query into init method. 2022-06-19 20:27:13 -07:00
Jason Volk
56bbc04527 ircd::fs::map: Add ergonomic trailing-opts ctor. 2022-06-19 20:27:13 -07:00
Jason Volk
b815ac8bec ircd::fs: Eliminate user-defined ctors on various opts for designated inits. 2022-06-19 20:27:13 -07:00
Jason Volk
288647598c ircd::json: Fix tuple template trait deprecated for C++20. 2022-06-19 20:14:23 -07:00
Jason Volk
211ea6ba55 ircd: Fixes for macro collision (gnu++20). 2022-06-19 20:14:23 -07:00
Jason Volk
78848925ee ircd::gpt: Various refactoring. 2022-06-19 20:14:22 -07:00
Jason Volk
31e078506a ircd::simt: Store divisor in mean state for now. 2022-06-19 20:14:22 -07:00
Jason Volk
7006391936 ircd::spirit: Enable qi::rule/karma::rule overrides for clang. 2022-06-19 20:14:22 -07:00
Jason Volk
ffa62d0f4c ircd::json: Remove redundant typedef; simplify.
ircd:Ⓜ️ Fix ambiguous (C++20).
2022-06-19 20:14:22 -07:00
Jason Volk
96587f2e6d modules/media: Eliminate blocks database; encode data into event content. (#139) 2022-06-19 20:14:22 -07:00
Jason Volk
ffd61f3a2f ircd:Ⓜ️ Add db::sopts passthru in dbs::write_opts. 2022-06-17 21:11:54 -07:00
Jason Volk
58a346f18b ircd::db: Deprecate gopts::seqnum/iter_start_seqnum per RocksDB 7.x. 2022-06-17 21:11:54 -07:00
Jason Volk
4a18caf245 ircd::vg: Add template convenience defined(); improve call interface. 2022-06-17 21:11:54 -07:00
Jason Volk
f40b77c307 ircd::rfc3986: Simplify typedef; simplify pragma/linkage. 2022-06-17 21:11:54 -07:00
Jason Volk
4ae50c97d1 ircd: Various symbol internalizing and PLT reductions. 2022-06-17 21:11:54 -07:00
Jason Volk
2288e0d6fa ircd::asio: Symbol and linkage reductions for boost/asio related. 2022-06-17 21:11:54 -07:00
Jason Volk
169eda8da4 ircd::client: Encapsulation related reorg; still needs more work. 2022-06-17 21:11:54 -07:00
Jason Volk
7cdd798958 ircd: Ensure initialized values in conditionals (pedantic; llvm). 2022-06-17 21:11:54 -07:00
Jason Volk
e3e3bd7b09 ircd: ISO C++ requires template on destructor names out-of-line. 2022-06-17 21:11:54 -07:00
Jason Volk
f4979e42f9 ircd::ctx: Fix extra semicolons on scope. 2022-06-17 21:11:54 -07:00
Jason Volk
fd54aa11e6 Fix missing virtual destructor override indications (pedantic). 2022-06-17 21:11:54 -07:00
Jason Volk
4e5002eb43 ircd::openssl: Fix argument narrowing from default constants. 2022-06-17 21:11:54 -07:00
Jason Volk
50017e2555 Fix unescaped document comments possibly interpreted as commands. [ci skip] 2022-06-17 21:11:54 -07:00
Jason Volk
c15272a5f3 ircd::util: Fix reinterpret cast of reference; add inline linkages; noexcept. 2022-06-17 21:11:54 -07:00
Jason Volk
c9ec0b3923 ircd::spirit: Split substring_view into header. 2022-06-17 21:11:54 -07:00
Jason Volk
597b4d4afb ircd::spirit: Add optimized interpositions for qi char_range / string_parse. 2022-06-17 21:11:54 -07:00
Jason Volk
ba06a52368 ircd::rfc3986: Add public rule abstracting uri_parse construction. 2022-06-17 21:11:54 -07:00
Jason Volk
08c35bac0f ircd::spirit: Optimize karma::rule toward eliminating indirect branching. 2022-06-17 21:11:54 -07:00
Jason Volk
9ef44f9295 ircd::spirit: Split custom_parser into header. 2022-06-17 21:11:54 -07:00
Jason Volk
401f61e564 ircd::json: Remove unit linkages for constant expression values. 2022-06-17 21:11:54 -07:00
Jason Volk
9a982c814b ircd::simd: Eliminate unnecessary relocs from inline local statics. 2022-06-17 21:11:54 -07:00
Jason Volk
e43b3f5fd6 include/ircd/Makefile: Use cp -u to elide unnecessary copy for faster make install. 2022-06-17 21:11:54 -07:00
Jason Volk
4d207e3edc ircd::buffer: Minor simplify conversion construction casts. 2022-06-17 21:11:54 -07:00
Jason Volk
48486c2e27 ircd::json::tuple: Add missing linkages; branch expect; constness. 2022-06-17 21:11:53 -07:00
Jason Volk
4821f6d2db ircd: Move any externally used interfaces out of init objects. 2022-06-17 21:11:53 -07:00
Jason Volk
e51b855f2b ircd: Various symbol surface reductions and sorting. 2022-06-17 21:11:53 -07:00
Jason Volk
04558290c0 ircd: Toward improving cold/unlikely section population. 2022-06-17 21:11:53 -07:00
Jason Volk
f5d3da8d3f ircd: Add hours/minutes to lex_cast specialization suite. 2022-06-17 21:11:53 -07:00
Jason Volk
29fda76769 ircd::spirit: Optimize functor, qi::rule toward eliminating indirect branching. 2022-06-17 21:11:53 -07:00
Jason Volk
d59d1a8060 ircd::spirit: Additional boost iterator ctors for substring_view. 2022-06-17 21:11:53 -07:00
Jason Volk
03c69de789 ircd::spirit: Add nothrow/noexcept overload to force no EH at callsite. 2022-06-17 21:11:53 -07:00
Jason Volk
b1f1e003d2 ircd::spirit: Fix missing include guard/pragma; minor cleanup/comments. 2022-06-17 21:11:53 -07:00
Jason Volk
19ede0f625 ircd::json: Remove unnecessary global object linkage. 2022-06-17 21:11:53 -07:00
Jason Volk
3d672ab9bc Rename common instance variables of window_buffer for clarity. 2022-06-17 21:11:53 -07:00
Jason Volk
a10bc71fbf ircd: Improve deps list for precompiled header related. 2022-06-17 21:11:53 -07:00
Jason Volk
19210277a2 ircd:🆑:data: Add master() method for associated memobject. 2022-06-17 21:11:53 -07:00
Jason Volk
63a5a6dfdd ircd::vector_view: Suppress deprecated-copy warning here for now. 2022-06-17 21:11:53 -07:00
Jason Volk
a600d59367 ircd::allocator: Reinterface for attributed function instrumentation. 2022-06-17 21:11:53 -07:00
Jason Volk
96b101cd6f ircd: Promote assume() to macro in portable.h.
Revert "ircd: Add assume() convenience wrapping for __builtin_assume()."

This reverts commit 597f60cf6b.
2022-06-17 21:11:53 -07:00
Jason Volk
0fbbf1853f ircd::tokens: Simplify interface argument passing. 2022-06-17 21:11:53 -07:00
Jason Volk
0433ea573a ircd::run::handler: Distill handler prototype for direct constructions. 2022-06-17 21:11:53 -07:00
Jason Volk
61c64ccb08 ircd::simd: Zero-init result to not burden caller w/ partial inits. 2022-06-17 21:11:53 -07:00
Jason Volk
41c6c35b4c ircd::simd: De-inline output sink portion of print template. 2022-06-17 21:11:53 -07:00
Jason Volk
628141c78d ircd::simd: Add template defaulting inference for ergonomic usage of print(). 2022-06-17 21:11:53 -07:00
Jason Volk
d2833cb3e2 ircd:🆑 Improve code object semantics; handle related. 2022-06-17 21:11:53 -07:00
Jason Volk
f5fb03b1b5 ircd:🆑:code: Add construction for IL. 2022-06-17 21:11:53 -07:00
Jason Volk
d9c087c037 ircd:🆑 Add bool operator to wrapper handle objects. 2022-06-17 21:11:53 -07:00
Jason Volk
6c443361bc ircd::buffer: Name some synthetic variables for debuggability. 2022-06-17 21:11:53 -07:00
Jason Volk
2106263dd4 ircd::buffer: Adorn out-of-line asio glue with noexcept. 2022-06-17 21:11:53 -07:00
Jason Volk
994fc377c7 ircd:Ⓜ️ Dissolve m::matrix instance object; burden user instead. 2022-06-17 21:11:53 -07:00
Jason Volk
fb771478ee ircd:Ⓜ️ Move module name list out of m::matrix object to internal. 2022-06-17 21:11:53 -07:00
Jason Volk
3e7875e314 ircd:🆑 Inline various move semantics; fix data::mapped move. 2022-06-17 21:11:53 -07:00
Jason Volk
b4e4c06890 ircd:🆑 Refactor interface for map-only/zero-copy approach. 2022-06-17 21:11:53 -07:00
Jason Volk
aba8b6813e ircd:🆑 Remove the host ptr conf item for now. 2022-06-17 21:11:53 -07:00
Jason Volk
9fb199ecf7 ircd:🆑 Add data maps/refs counts to interface wrapping. 2022-06-17 21:11:53 -07:00
Jason Volk
fd39de53f4 ircd:🆑 Split header into directory; minor reorg. 2022-06-17 21:11:53 -07:00
Jason Volk
b39d3396f9 ircd:🆑 Decrease kern::range dimension. 2022-06-17 21:11:53 -07:00
Jason Volk
729092d410 ircd:🆑 Cleanup / split library linkage to private memfun; bind now.
Bind now to prevent issues from lazy binding on different threads and
when overriding with custom builds of mesa/icd.
2022-06-17 21:11:53 -07:00
Jason Volk
d817536e23 ircd::simt: Use defined epsilon for normalization smoothing for now. 2022-06-17 21:11:53 -07:00
Jason Volk
95c4e0af52 ircd:🆑 Simplify data interface related for now. 2022-06-17 21:11:53 -07:00
Jason Volk
013117495c ircd::util: Add volatile overload for alignment checker. 2022-06-17 21:11:53 -07:00
Jason Volk
9c7ac98d9a ircd::util: Add involatile_cast() template convenience. 2022-06-17 21:11:53 -07:00
Jason Volk
c9796fa9e0 ircd:🆑 Allow optional map closures; add write invalidate flag from cl1.2. 2022-06-17 21:11:53 -07:00
Jason Volk
e68b93fa61 ircd::fpe: Add debug log info; cold sections. 2022-06-17 21:11:53 -07:00
Jason Volk
8e268023d1 ircd: Add cfloat to standard include. 2022-06-17 21:11:53 -07:00
Jason Volk
b7b1328352 ircd::gpt::pipe: Reuse logsm buffer for logexp intermediate values. 2022-06-17 21:11:53 -07:00
Jason Volk
2604f1370a ircd::buffer: Move abstract align/padding tools to ircd::util. 2022-06-17 21:11:53 -07:00
Jason Volk
c92481475f ircd::buffer: Add padding bool constexpr; minor cleanup. 2022-06-17 21:11:53 -07:00
Jason Volk
6843d7a98d ircd::fs: Support more exotic alignments for memory mapped files. 2022-06-17 21:11:53 -07:00
Jason Volk
b3dc9a9ac3 ircd::simt: Fixes for non-pow2 workgroup sizes. 2022-06-17 21:11:53 -07:00
Jason Volk
8bb8c19cda ircd::allocator: Add mlock2(2) interface wrapping. 2022-06-17 21:11:53 -07:00
Jason Volk
d029de6a7a ircd::tokens: Simplify overload resolution w/ closure bool return. 2022-06-17 21:11:53 -07:00
Jason Volk
9fcca617df ircd::util: Complete the closure_bool template tool. 2022-06-17 21:11:53 -07:00
Jason Volk
0b2b243c71 ircd::fs: Extend map interface with flush/sync. 2022-06-17 21:11:53 -07:00
Jason Volk
73cd22c7d0 ircd::allocator: Add msync(2) wrapping. 2022-06-17 21:11:53 -07:00
Jason Volk
13052f7090 ircd:🆑 Elaborate code compile/link build interface for cl1.2+. 2022-06-17 21:11:53 -07:00
Jason Volk
2b30d775b9 ircd::simt: Add intrinsic integer max. 2022-06-17 21:11:53 -07:00
Jason Volk
26ce330d6d ircd::gpt: Add layer count to model section of opts. 2022-06-17 21:11:53 -07:00
Jason Volk
d844ec895c ircd::gpt: Simplify aperature unions. 2022-06-17 21:11:53 -07:00
Jason Volk
a7560b5cfc ircd::gpt::pipe::code: Preliminary reorg for legacy NIR build cache. 2022-06-17 21:11:53 -07:00
Jason Volk
8d6496956d ircd::tokens: Allow signed argument for tokens_after() for zeroth token. 2022-06-17 21:11:53 -07:00
Jason Volk
271214ff70 ircd::allocator: Add mprotect(2) wrappings. 2022-06-17 21:11:53 -07:00
Jason Volk
55004f054a ircd::simt: Use native_sqrt(); minor cleanup / named statement. 2022-06-17 21:11:53 -07:00
Jason Volk
d733fe8ef9 ircd::simt: Add overloads for scalar types for now. 2022-06-17 21:11:53 -07:00
Jason Volk
5e824a4f6f ircd::simt: Simplify LDS broadcast. 2022-06-17 21:11:53 -07:00
Jason Volk
12f3eb871d ircd::simt: Fix buffer and ordering hokey-pokey. 2022-06-17 21:11:53 -07:00
Jason Volk
781ead25b5 ircd:🆑 Add shlib path conf. 2022-06-17 21:11:53 -07:00
Jason Volk
65322352b0 ircd::spirit: Workarounds for clang-13. 2022-06-17 21:11:53 -07:00
Jason Volk
35986844bb ircd::ios: Fixes for boost::asio 1.74+. 2022-06-17 21:11:53 -07:00
Jason Volk
cb8362ba51 ircd: Correct/abridge various comments. 2022-06-17 21:11:52 -07:00
Jason Volk
d0a1d32488 ircd::db: Add SST scan interface w/ console suite. 2022-06-17 21:11:52 -07:00
Jason Volk
4499bb0f35 ircd::db: Deprecate forking sst::tool() iface; remove crashy console cmd. 2022-06-17 21:11:52 -07:00
Jason Volk
38f6507434 ircd::simt: Relax define guards for stdclc++ compat. 2022-06-17 21:11:52 -07:00
Jason Volk
a85f192066 ircd::simt: Move workgroup ident values to arguments. 2022-06-17 21:11:52 -07:00
Jason Volk
b6207fac74 ircd:🆑 Add cl_program wrap for source and binary extrication. 2022-06-17 21:11:52 -07:00
Jason Volk
1c668b038c ircd:🆑 Move submit blocking watchdog threshold into conf item. 2022-06-17 21:11:52 -07:00
Jason Volk
e6a71efe8c ircd:🆑 Sample tsc for work item submission for blocking interface mitigations. 2021-10-16 15:24:23 -07:00
Jason Volk
9401c206a1 ircd:🆑 Check and throw for unavailability in work item ctor. 2021-10-15 11:40:32 -07:00
Jason Volk
31431d32c5 ircd: Add utility to beep the pcspeaker. 2021-10-06 16:36:52 -07:00
Jason Volk
422c4da624 ircd::simt: Add a local variant for prng. 2021-10-06 13:13:47 -07:00
Jason Volk
1be7a8dea2 ircd:🆑 Fix name interface related; copy value string. 2021-10-06 13:13:47 -07:00
Jason Volk
8ffdddf860 ircd:🆑 Improve queue profiling wrapper related. 2021-10-06 13:13:47 -07:00
Jason Volk
183ff2138f ircd:🆑 Split out init subs; add semver parse for device api. 2021-10-06 13:13:47 -07:00
Jason Volk
a04cc3c290 ircd:🆑 Split platform info banner out of main init. 2021-10-06 13:13:47 -07:00
Jason Volk
c05e5e09de ircd:🆑 Additional informational interfaces; kernel names; typing. 2021-10-06 13:13:47 -07:00
Jason Volk
aea6c79fc2 ircd::gpt: Add top N and target label result register control block. 2021-10-06 13:13:47 -07:00
Jason Volk
8bd78af128 ircd::gpt: Additional task header/interface simplification. 2021-10-06 13:13:47 -07:00
Jason Volk
b72a4590b1 ircd::gpt: Task header reorganization/resimplification. 2021-10-06 13:13:47 -07:00
Jason Volk
c1f3e580c3 ircd::gpt: Add top_p lmhead selector, quantized for now. 2021-10-06 13:13:47 -07:00
Jason Volk
8a3eeb46f9 ircd::gpt::pipe: Optimize pipeline to cache attention state for generations. 2021-10-06 13:13:47 -07:00
Jason Volk
79b6d4b9da ircd::gpt::pipe: Unify descriptor allocations. 2021-10-06 13:13:47 -07:00
Jason Volk
9628585f43 ircd:🆑 Add condition for null size slice construction. 2021-10-06 13:13:47 -07:00
Jason Volk
d0c2674b3e ircd:🆑 Add data::offset() to interface. 2021-10-06 13:13:47 -07:00
Jason Volk
ce9abfb321 ircd::gpt::model: Optimize left-attention mask. 2021-10-06 13:13:47 -07:00
Jason Volk
f1051cf56b ircd::simt: Implement bitonic sort; replace stub. 2021-09-15 01:44:36 -07:00
Jason Volk
a82e7bf280 ircd: Reduce code generated for argument prep in assert block; jump directly to lfence. 2021-09-15 01:44:36 -07:00
Jason Volk
20162fd7d5 ircd::gpt: Splits and renames; various reorg. 2021-09-15 01:44:36 -07:00
Jason Volk
adbb974af0 ircd::mapi: Fix for non-standard-layout unique_ptr impl. 2021-09-14 23:39:55 -07:00
Jason Volk
120a382398 ircd::net::dns: Split delegate service_init/fini; fix error. 2021-09-14 23:39:55 -07:00
Jason Volk
6e7e56f081 ircd::gpt::pipe: Add conf item for default source paths and opts for now. 2021-09-14 23:39:55 -07:00
Jason Volk
a67b93b8c6 ircd::buffer: Split buffers:: related into header. 2021-09-14 23:39:55 -07:00
Jason Volk
3e6fcf3a47 ircd::utf: Split header; improve decode codegen; inline length. 2021-09-14 23:39:55 -07:00
Jason Volk
880f089169 ircd::simd: Add pack convenience template funcro. 2021-09-14 23:39:55 -07:00
Jason Volk
6723539997 ircd::simd: Add template function for consistent lane-to-lane shufs. 2021-09-14 23:39:55 -07:00
Jason Volk
395bcf0789 ircd::simd: Split lane_id related into header. 2021-09-14 23:39:55 -07:00
Jason Volk
26a6fb50b6 ircd::simd: Inline accoutrements for lane_cast; cleanup asm annotes. 2021-09-14 23:39:55 -07:00
Jason Volk
705c1cc776 ircd::ios: Structure documentation briefs. [ci skip] 2021-09-14 23:39:55 -07:00
Jason Volk
a30f06d80b ircd: Move scalar shorthand typedefs to stdinc.h. 2021-09-14 23:39:55 -07:00
Jason Volk
49fb5b13a2 ircd:🆑 Simplify parameter pack w/ fold expression; thanks @jonesmz 2021-08-08 09:47:02 -07:00
Jason Volk
71b1b44a7f ircd::utf: Rename encode() to encode_sparse(). 2021-08-08 09:47:02 -07:00
Jason Volk
1eec9bfd64 ircd::gpt: Remove unnecessary packed attribute. 2021-08-01 03:34:27 -07:00
Jason Volk
99f087afbe ircd::buffer: Fix anonymous scope ambiguity for gcc-10. 2021-05-14 05:57:47 -07:00
Jason Volk
4f97dcf456 ircd: Vector initialization fixes for GCC. 2021-05-14 05:57:47 -07:00
Jason Volk
c3cb249f78 ircd::gpt: Split debug related; improve flush options; minor cleanup. 2021-05-14 05:57:47 -07:00
Jason Volk
179d9abcf7 ircd::simd: Improve typedefs for fp16; relax requirement. 2021-05-14 05:57:47 -07:00
Jason Volk
2c243be19a ircd:🆑 Add conf items for configuration environment; tweak loghead. 2021-05-12 00:05:09 -07:00
Jason Volk
467108f09a ircd:🆑 Add nice/intensity'ish rate-shaping option. 2021-05-11 20:56:09 -07:00
Jason Volk
37b1d47c8d ircd::gpt: Reorganize task options and control blocks. 2021-05-11 20:56:09 -07:00
Jason Volk
3e9c2d1b56 ircd::simt: Abstract the three-piece softmax, mean state related. 2021-05-11 20:56:09 -07:00
Jason Volk
5e91d51e6a ircd::simt: Add dressings for cross-inclusion. 2021-05-11 20:56:09 -07:00
Jason Volk
d4e41218b0 ircd::ctx::pool: Simplify notify on work completion. 2021-05-11 20:56:09 -07:00
Jason Volk
5534672a07 ircd::fs: Move madvise suite to allocator unit. 2021-05-11 20:56:09 -07:00
Jason Volk
d0c9a16770 ircd:🆑 Add interface for plat/dev info dump w/ console cmd. 2021-05-11 20:56:09 -07:00
Jason Volk
f61239a52c ircd::gpt::pipe: Various statistical instrumentation. 2021-04-22 12:27:57 -07:00
Jason Volk
2a3c54afa2 ircd::gpt::pipe: Add model invalidation for device resynchronization. 2021-04-22 12:27:57 -07:00
Jason Volk
bd460a80ce ircd::gpt::pipe::model: Additional sub-buffering for lmhead. 2021-04-22 12:27:57 -07:00
Jason Volk
b6e2876af4 ircd::math: Add simd template wrapping for sqrt(). 2021-04-22 12:27:57 -07:00
Jason Volk
d5eb1e3a87 ircd::gpt: Add backpropagation pipe. 2021-04-22 12:27:57 -07:00
Jason Volk
14a1561cad ircd::gpt: Add adaptive moment state to pipe model; move task prelim defs. 2021-04-22 12:27:57 -07:00
Jason Volk
4ed6582472 ircd:🆑 Allow no-op exec construction. 2021-04-22 12:27:57 -07:00
Jason Volk
bc98835b3c ircd::simt: Simplify interface; internalize workitem functions. 2021-04-22 12:27:57 -07:00
Jason Volk
075b40400a ircd::simt: Split reduce tools; add float4 horizontal add. 2021-04-22 12:27:57 -07:00
Jason Volk
eba5d7f586 ircd::gpt: Improve build related; debug/assertions. 2021-04-22 12:27:57 -07:00
Jason Volk
de166dfab8 ircd::simt: Simplify various loop/mask conditionals; minor cleanup. 2021-04-22 12:27:57 -07:00
Jason Volk
9c062d9c3f ircd::gpt::pipe: Correctness; compute loss, statistics; pipeline optimize. 2021-04-22 12:27:57 -07:00
Jason Volk
20f81c55ea ircd: Move some typedefs to portable; minor reorg. 2021-04-22 12:27:57 -07:00
Jason Volk
a476df4ca1 ircd::math: Simplify fmma template. 2021-04-22 12:27:57 -07:00
Jason Volk
86d985a42f ircd:🆑 Add kernel workgroup info convenience interface. 2021-04-22 12:27:57 -07:00
Jason Volk
1870c364f4 ircd::gpt: Reorganize interface. 2021-04-22 12:27:57 -07:00
Jason Volk
f096e7fcf5 ircd: Typedef uchar if necessary. 2021-04-22 12:27:56 -07:00
Jason Volk
5962a58c1e ircd::simt: Start a CLC toolchest. 2021-04-22 12:27:56 -07:00
Jason Volk
29e74ec9e1 ircd::gpt: Transformer Pipe. 2021-04-22 12:27:56 -07:00
Jason Volk
29fb7910b7 ircd::gpt: Model structural tweaks; task structure; various. 2021-04-22 12:27:56 -07:00
Jason Volk
cb45dcc840 ircd:🆑 Add subbuffer region handles to interface. 2021-04-22 12:27:56 -07:00
Jason Volk
2a730b2799 ircd:🆑:exec: Add more specific size/offset argument for map closure related. 2021-04-22 12:27:56 -07:00
Jason Volk
9e795acd72 ircd:🆑 Assert cl::data object not included in parameter template. 2021-04-22 12:27:56 -07:00
Jason Volk
d5f1a490db ircd:🆑 Add flush and sync exec opts; reorg post-submit related. 2021-04-22 12:27:56 -07:00
Jason Volk
dbf19fcf4b ircd:🆑:kern: Add argument setter template for various/integral inputs. 2021-04-22 12:27:56 -07:00
Jason Volk
6ca5f8b18f ircd:🆑:code: Add binary construction. 2021-04-22 12:27:56 -07:00
Jason Volk
034170cb30 ircd:🆑 Add status argument to work::wait(); improve dtors. 2021-04-22 12:27:56 -07:00
Jason Volk
54c1be6ec3 ircd:🆑 Add conf item for queue profiling flag. 2021-04-22 12:27:56 -07:00
Jason Volk
000102cf4e ircd:🆑 Add argument-ordered ergonomic constructor. 2021-04-22 12:27:56 -07:00
Jason Volk
21472fcc5b ircd:🆑 Add buffer to buffer copy to interface. 2021-04-22 12:27:56 -07:00
Jason Volk
07dd934602 ircd:🆑:exec: Add the no-implicit-dependency option for exec. 2021-04-22 12:27:56 -07:00
Jason Volk
4ab97bd1a3 ircd::buffer: Minor qualifiers; minor cleanup. 2021-04-22 12:27:56 -07:00
Jason Volk
51d2ac4b33 ircd:🆑 Reorder the kern::range lists for common construction; minor fixes. 2021-04-22 12:27:56 -07:00
Jason Volk
a21589654a ircd:🆑 Re-attempt pre-SVM mapping w/ synchronous closure. 2021-03-17 18:55:56 -07:00
Jason Volk
d69f8ffb9c ircd:🆑:data: Add basic property interface wrappings. 2021-03-17 18:55:56 -07:00
Jason Volk
60e66cb273 ircd:🆑 Move work wait function out of dtor into member; assert handle. 2021-03-17 18:55:56 -07:00
Jason Volk
3389c23feb ircd::math: Add softmax functions. 2021-03-17 18:55:56 -07:00
Jason Volk
31425a5ca0 ircd::math: Add vector fallbacks for standard exp. 2021-03-17 18:55:56 -07:00
Jason Volk
480722b3b8 ircd::math: Additional fallback overloads for explicit precisions. 2021-03-17 18:55:56 -07:00
Jason Volk
74d7747fa3 ircd::math: Add fallback for vectorized single-precision power of. 2021-03-17 18:55:56 -07:00
Jason Volk
152ea2df0a ircd::math: Add normalization template. 2021-03-17 18:55:56 -07:00
Jason Volk
70bb5c257a ircd::math: Allow increased mean template precision. 2021-03-17 18:55:56 -07:00
Jason Volk
05a3e505cc ircd::simd: Add horizontal adder template. 2021-03-17 18:55:56 -07:00
Jason Volk
90f88cf78d ircd: Allow restricted pointer constructions for string_view/vector_view. 2021-03-17 18:55:56 -07:00
Jason Volk
0cef0848e1 ircd::vector_view: Use proper typedefs in places. 2021-03-17 18:55:56 -07:00
Jason Volk
8032454415 ircd::math: Add matrix fused-multiply-add template. 2021-03-17 18:55:56 -07:00
Jason Volk
7505783cc7 ircd::math: Add fallback for vectorized hyperbolic tangent. 2021-03-16 12:58:22 -07:00
Jason Volk
d6d18f7b08 ircd::buffer: Add non-char array convenience cast constructions. 2021-03-16 12:58:22 -07:00
Jason Volk
5d6554b1a3 ircd:🆑 Improve data construction; add initialization xfer to ctor. 2021-03-16 12:58:22 -07:00
Jason Volk
44521ce019 ircd:🆑 Add variadic argument template pack construction. 2021-03-16 12:58:22 -07:00
Jason Volk
c7fa7a07ee ircd::simd: Fix attribute ns. 2021-03-16 12:58:22 -07:00
Jason Volk
ca1d715702 ircd:🆑 Expose enable conf item to interface. 2021-03-16 12:58:22 -07:00
Jason Volk
699d15e8c9 ircd:🆑 Add options for exec; improve dependency related. 2021-03-16 12:58:22 -07:00
Jason Volk
b1bfa7640d ircd:🆑 Add missing move ctor and move assign inlines. 2021-03-16 12:58:22 -07:00
Jason Volk
59106f9456 ircd::fs::map: Add hugepage related to interface opts. 2021-03-16 12:58:22 -07:00
Jason Volk
fdd052da87 ircd::fs::map: Add MAP_LOCKED wrapper to interface opts. 2021-03-16 12:58:22 -07:00
Jason Volk
43b85dad87 ircd:🆑 Offload blocking wait to thread; integrate dependencies with ircd::ctx. 2021-03-16 12:58:22 -07:00