Skip to content

Instantly share code, notes, and snippets.

View avik-pal's full-sized avatar
😃
Focusing

Avik Pal avik-pal

😃
Focusing
View GitHub Profile
// ./bazel-bin/enzymexlamlir-opt --pass-pipeline="builtin.module(canonicalize,cse,canonicalize,enzyme-hlo-generate-td{patterns=compare_op_canon<16>;transpose_transpose<16>;broadcast_in_dim_op_canon<16>;convert_op_canon<16>;dynamic_broadcast_in_dim_op_not_actually_dynamic<16>;chained_dynamic_broadcast_in_dim_canonicalization<16>;dynamic_broadcast_in_dim_all_dims_non_expanding<16>;noop_reduce_op_canon<16>;empty_reduce_op_canon<16>;dynamic_reshape_op_canon<16>;get_tuple_element_op_canon<16>;real_op_canon<16>;imag_op_canon<16>;conj_complex_negate<16>;get_dimension_size_op_canon<16>;reshape_op_canon<16>;merge_consecutive_reshapes<16>;transpose_is_reshape<16>;zero_extent_tensor_canon<16>;cse_broadcast_in_dim<16>;cse_slice<16>;cse_transpose<16>;cse_convert<16>;cse_dot_general<16>;cse_reshape<16>;cse_mul<16>;cse_div<16>;cse_add<16>;cse_subtract<16>;cse_min<16>;cse_max<16>;cse_neg<16>;cse_abs<16>;cse_concatenate<16>;concatenate_op_canon<16>(1024);select_op_canon<16>(1024);add_simplify<16>;sub_simplify<16>;and_simplify
module @reactant_lu_blocked attributes {mhlo.num_partitions = 1 : i64, mhlo.num_replicas = 1 : i64} {
func.func @main(%arg0: tensor<1024x1024xf64> {tf.aliasing_output = 0 : i32}) -> (tensor<1024x1024xf64>, tensor<1024xi64>, tensor<1024xi64>) {
%c = stablehlo.constant dense<896> : tensor<128x1xi64>
%c_0 = stablehlo.constant dense<768> : tensor<256x1xi64>
%c_1 = stablehlo.constant dense<640> : tensor<384x1xi64>
%c_2 = stablehlo.constant dense<512> : tensor<512x1xi64>
%c_3 = stablehlo.constant dense<384> : tensor<640x1xi64>
%c_4 = stablehlo.constant dense<256> : tensor<768x1xi64>
%c_5 = stablehlo.constant dense<128> : tensor<896x1xi64>
%c_6 = stablehlo.constant dense<"0x01000000000000000100000000000000010000000000000001000000000000000100000000000000010000000000000001000000000000000100000000000000010000000000000001000000000000000100000000000000010000000000000001000000000000000100000000000000010000000000000001000000000000000100000000000000010000000000000001000000000000000100000000
module @"reactant_\E2\88\87suma..." attributes {mhlo.num_partitions = 1 : i64, mhlo.num_replicas = 1 : i64} {
func.func private @"Const{typeof(sumabs2)}(Main.sumabs2)_autodiff"(%arg0: tensor<12x16x4xf32>, %arg1: tensor<4x16xf32>, %arg2: tensor<4x16xf32>, %arg3: tensor<16xf32>, %arg4: tensor<16xf32>, %arg5: tensor<2xui64>) -> (tensor<f32>, tensor<12x16x4xf32>, tensor<4x16xf32>, tensor<4x16xf32>, tensor<16xf32>, tensor<16xf32>, tensor<2xui64>) {
%c = stablehlo.constant dense<0> : tensor<i32>
%c_0 = stablehlo.constant dense<15> : tensor<i64>
%cst = stablehlo.constant dense<0.000000e+00> : tensor<f32>
%c_1 = stablehlo.constant dense<1> : tensor<i64>
%c_2 = stablehlo.constant dense<2> : tensor<i64>
%c_3 = stablehlo.constant dense<0> : tensor<i64>
%cst_4 = stablehlo.constant dense<0.000000e+00> : tensor<4x12xf32>
%0 = stablehlo.transpose %arg0, dims = [2, 1, 0] : (tensor<12x16x4xf32>) -> tensor<4x16x12xf32>
module @"reactant_Chain{@..." attributes {mhlo.num_partitions = 1 : i64, mhlo.num_replicas = 1 : i64} {
func.func @main(%arg0: tensor<1000x10x3xf32>, %arg1: tensor<10xf32>, %arg2: tensor<10xf32>, %arg3: tensor<10xf32>, %arg4: tensor<10xf32>, %arg5: tensor<10xf32>, %arg6: tensor<10xf32>, %arg7: tensor<10x1xf32>, %arg8: tensor<1xf32>) -> tensor<10000x1xf32> {
%cst = stablehlo.constant dense<5.000000e+00> : tensor<10xf32>
%cst_0 = stablehlo.constant dense<0.000000e+00> : tensor<1x10000xf32>
%cst_1 = stablehlo.constant dense<0.00999999977> : tensor<1x10000xf32>
%c = stablehlo.constant dense<999> : tensor<i64>
%cst_2 = stablehlo.constant dense<0.000000e+00> : tensor<f32>
%c_3 = stablehlo.constant dense<2> : tensor<i64>
%c_4 = stablehlo.constant dense<1> : tensor<i64>
%c_5 = stablehlo.constant dense<0> : tensor<i64>
This file has been truncated, but you can view the full file.
// Pass pipeline:
// any(sdy-save-module{file-name=sdy_module_before_sdy_import module-dump-directory=},inline{default-pipeline=canonicalize inlining-threshold=4294967295 max-iterations=4 },symbol-dce,sdy-lift-inlined-meshes,func.func(sdy-constant-splitter,sdy-add-data-flow-edges),sdy-manual-axes-cleanup,func.func(sdy-apply-sharding-constraints),sdy-sharding-group-import,sdy-save-module{file-name=sdy_module_after_sdy_import module-dump-directory=},sdy-user-priority-propagate{conservative-propagation=false debug-propagation-edge-sharding=false debug-sharding-origins=false keep-sharding-rules=true module-dump-directory= propagation-strategy=aggressive run-op-priority-propagation=true},func.func(sdy-constant-merger),sdy-remove-sharding-groups,func.func(sdy-sharding-constraint-to-reshard,sdy-sink-data-flow-edges{sink-debug-propagation-edge-sharding=false sink-debug-sharding-origins=false},sdy-update-non-divisible-input-output-shardings,sdy-temp-explicit-reshards-for-optimizations),sdy-save-module{file-name=sdy_mo
This file has been truncated, but you can view the full file.
#di_file = #llvm.di_file<"julia" in ".">
#di_file2 = #llvm.di_file<"none" in ".">
#di_file17 = #llvm.di_file<"/home/avik-pal/.julia/packages/KernelAbstractions/sWSE0/src/macros.jl" in ".">
#di_file22 = #llvm.di_file<"/home/avik-pal/.julia/packages/Oceananigans/by6Hi/src/Models/NonhydrostaticModels/update_hydrostatic_pressure.jl" in ".">
#di_file29 = #llvm.di_file<"/home/avik-pal/.julia/packages/Oceananigans/by6Hi/src/Models/HydrostaticFreeSurfaceModels/compute_w_from_continuity.jl" in ".">
#di_file34 = #llvm.di_file<"float.jl" in ".">
#di_subroutine_type = #llvm.di_subroutine_type<>
#loc2 = loc("arg1.grid.z.c\E1\B5\83\E1\B5\83\E1\B6\A0.parent (path=(:args, 1, 2, 19, 1, 1))")
#loc3 = loc("arg1.grid.z.c\E1\B5\83\E1\B5\83\E1\B6\9C.parent (path=(:args, 1, 2, 19, 2, 1))")
#loc4 = loc("arg1.grid.z.\CE\94\E1\B5\83\E1\B5\83\E1\B6\A0.parent (path=(:args, 1, 2, 19, 3, 1))")
module @"reactant_loop!" attributes {mhlo.num_partitions = 8 : i64, mhlo.num_replicas = 1 : i64} {
func.func @main(%arg0: tensor<270xf64> {mhlo.sharding = "{devices=[2,4]<=[2,2,2]T(1,0,2) last_tile_dim_replicate}", tf.aliasing_output = 0 : i32}, %arg1: tensor<270xf64> {mhlo.sharding = "{devices=[2,4]<=[2,2,2]T(1,0,2) last_tile_dim_replicate}", tf.aliasing_output = 1 : i32}, %arg2: tensor<270xf64> {mhlo.sharding = "{devices=[2,4]<=[2,2,2]T(1,0,2) last_tile_dim_replicate}", tf.aliasing_output = 2 : i32}, %arg3: tensor<270xf64> {mhlo.sharding = "{devices=[2,4]<=[2,2,2]T(1,0,2) last_tile_dim_replicate}", tf.aliasing_output = 3 : i32}, %arg4: tensor<270xf64> {mhlo.sharding = "{devices=[2,4]<=[2,2,2]T(1,0,2) last_tile_dim_replicate}", tf.aliasing_output = 4 : i32}, %arg5: tensor<270xf64> {mhlo.sharding = "{devices=[2,4]<=[2,2,2]T(1,0,2) last_tile_dim_replicate}", tf.aliasing_output = 5 : i32}, %arg6: tensor<270xf64> {mhlo.sharding = "{devices=[2,4]<=[2,2,2]T(1,0,2) last_tile_dim_replicate}", tf.aliasing_output =

Keybase proof

I hereby claim:

  • I am avik-pal on github.
  • I am avikpal (https://keybase.io/avikpal) on keybase.
  • I have a public key ASAO4jnq8NTkcyXfyHvWCEeTYsU1k9NlfhG7eSFCz5MVbgo

To claim this, I am signing this object:

# This file is machine-generated - editing it directly is not advised
[[AbstractFFTs]]
deps = ["LinearAlgebra"]
git-tree-sha1 = "380e36c66edfa099cd90116b24c1ce8cafccac40"
uuid = "621f4979-c628-5d54-868e-fcf4e3e8185c"
version = "0.4.1"
[[AbstractTrees]]
deps = ["Markdown", "Test"]